US20050223389A1 - Method and system for remote browsing of computer files using a bar code reader - Google Patents

Method and system for remote browsing of computer files using a bar code reader Download PDF

Info

Publication number
US20050223389A1
US20050223389A1 US10/838,007 US83800704A US2005223389A1 US 20050223389 A1 US20050223389 A1 US 20050223389A1 US 83800704 A US83800704 A US 83800704A US 2005223389 A1 US2005223389 A1 US 2005223389A1
Authority
US
United States
Prior art keywords
data
interface
symbol
network
reader
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US10/838,007
Inventor
John Klein
Allan Herrod
Steven Woloschin
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=31999436&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=US20050223389(A1) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Priority claimed from US09/520,929 external-priority patent/US6507864B1/en
Application filed by Individual filed Critical Individual
Priority to US10/838,007 priority Critical patent/US20050223389A1/en
Publication of US20050223389A1 publication Critical patent/US20050223389A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/1613Constructional details or arrangements for portable computers
    • G06F1/1615Constructional details or arrangements for portable computers with several enclosures having relative motions, each enclosure supporting at least one I/O or computing function
    • G06F1/1616Constructional details or arrangements for portable computers with several enclosures having relative motions, each enclosure supporting at least one I/O or computing function with folding flat displays, e.g. laptop computers or notebooks having a clamshell configuration, with body parts pivoting to an open position around an axis parallel to the plane they define in closed position
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/1613Constructional details or arrangements for portable computers
    • G06F1/1626Constructional details or arrangements for portable computers with a single-body enclosure integrating a flat display, e.g. Personal Digital Assistants [PDAs]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/1613Constructional details or arrangements for portable computers
    • G06F1/1632External expansion units, e.g. docking stations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/1613Constructional details or arrangements for portable computers
    • G06F1/1633Constructional details or arrangements of portable computers not specific to the type of enclosures covered by groups G06F1/1615 - G06F1/1626
    • G06F1/1656Details related to functional adaptations of the enclosure, e.g. to provide protection against EMI, shock, water, or to host detachable peripherals like a mouse or removable expansions units like PCMCIA cards, or to provide access to internal components for maintenance or to removable storage supports like CDs or DVDs, or to mechanically mount accessories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/1613Constructional details or arrangements for portable computers
    • G06F1/1633Constructional details or arrangements of portable computers not specific to the type of enclosures covered by groups G06F1/1615 - G06F1/1626
    • G06F1/1684Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675
    • G06F1/1696Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675 the I/O peripheral being a printing or scanning device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/18Packaging or power distribution
    • G06F1/181Enclosures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/40Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
    • G06F16/43Querying
    • G06F16/432Query formulation
    • G06F16/434Query formulation using image data, e.g. images, photos, pictures taken by a user
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • G06F16/9554Retrieval from the web using information identifiers, e.g. uniform resource locators [URL] by using bar codes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0354Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of 2D relative movements between the device, or an operating part thereof, and a plane or surface, e.g. 2D mice, trackballs, pens or pucks
    • G06F3/03545Pens or stylus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K17/00Methods or arrangements for effecting co-operative working between equipments covered by two or more of main groups G06K1/00 - G06K15/00, e.g. automatic card files incorporating conveying and reading operations
    • G06K17/0022Methods or arrangements for effecting co-operative working between equipments covered by two or more of main groups G06K1/00 - G06K15/00, e.g. automatic card files incorporating conveying and reading operations arrangements or provisious for transferring data to distant stations, e.g. from a sensing device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/10544Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum
    • G06K7/10821Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum further details of bar or optical code scanning devices
    • G06K7/10881Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum further details of bar or optical code scanning devices constructional details of hand-held scanners
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/216Handling conversation history, e.g. grouping of messages in sessions or threads
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/222Monitoring or handling of messages using geographical location information, e.g. messages transmitted or received in proximity of a certain spot or area
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/02Terminal devices
    • H04W88/06Terminal devices adapted for operation in multiple networks or having at least two operational modes, e.g. multi-mode terminals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W74/00Wireless channel access, e.g. scheduled or random access
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup

Definitions

  • the invention relates to integrating host application software with data collection devices (e.g., bar code scanners) located on remote, wireless terminals.
  • data collection devices e.g., bar code scanners
  • the bar code symbol itself is a coded pattern of indicia comprised of, for example, a series of bars of various widths spaced apart from one another to form spaces of various widths, the bars and spaces having different light reflecting characteristics.
  • the readers electro-optically transform the graphic indicia into electrical signals which are decoded into alpha-numeric characters that are intended to be descriptive of the article or a characteristic thereof. Such characters typically are represented in digital form, and utilized as an input to a data processing system for applications in point of sale processing, inventory control and the like.
  • Known scanning systems comprise a light source for generating a light beam incident on a bar code symbol and a light receiver for receiving the reflected light and decoding the information contained in the bar code symbol accordingly.
  • the readers may comprise a flying spot scanning system wherein the light beam is scanned rapidly across a bar code symbol to be read or a fixed field of view reading system wherein the bar code symbol to be read is illuminated as a whole and a CCD (Charge Coupled Device) array is provided for detecting the light reflected from the bar code symbol.
  • CCD Charge Coupled Device
  • Known hand-held optical readers are often in the shape of a gun having a handle portion and a barrel portion.
  • the reading window through which the light beam passes is generally located at the end face of the barrel portion, and the reader is aimed at the indicia to be read by the operator holding the handle portion.
  • a trigger is situated in the region of the junction between the handle portion and the barrel portion for operation by the user to actuate the optical reader.
  • the down-loaded data may be raw data or data that has been processed within the hand-held computer.
  • Data collection can be carried out by entering information to the hand-held computer via a keypad, or by incorporating in the computer an optical reader for example for reading bar code symbols, or incorporating a reader for reading a magnetic card strip.
  • an optical reader for example for reading bar code symbols
  • incorporating a reader for reading a magnetic card strip For example when information about various products is required during inventorying, those products may bear bar code symbols or magnetic strips, or have associated magnetic strip cards which are read by the hand-held computer.
  • the data collected can be transferred from the hand-held computer to a central or peripheral device by known means such as radio frequency radio links, wired connections, infra-red communications or other known transmission arrangements.
  • the invention features a new method of integrating host application software with data collection devices (e.g., bar code scanners) located on remote, wireless terminals.
  • a data collection object executes on the host computer, using a predetermined interface between the host application software and the data collection object. That interface, and the communications between the host application software and the data collection object, are configured so that to the host application software the data collection device appears to be local hardware on the host computer.
  • the data collection object creates and executes threads of execution for controlling operation of the data collection device, with the threads communicating with the remote terminals via a host computer transport layer, the wireless link, and a remote computer transport layer at the remote terminals.
  • a data collection device driver on the remote terminal receives communications from the data collection object, and returns information to the data collection object, over the remote computer transport layer, wireless link, and host computer transport layer.
  • the data collection object may be implemented as a COM.
  • Communications between the remote terminal and the host computer may be over an Internet or Intranet network.
  • the data collection device may be a bar code scanner, and the data collection object may be a bar code scanning object.
  • a portable computer device comprising a main body and at least one data collection/communications module connectable to the main body, the main body including an interface for connection with the module, a processor for processing information received from the module and a communication link for exchanging information with a host. Because of the modular arrangement the device may be easily adapted to different applications without the requirement to manufacture costly customized systems or to modify such systems which would prove expensive and complex.
  • the main body may include a visual display, for example an LCD display.
  • the main body may also comprise a keypad.
  • the modules may comprise an image capture module, a laser scanner module and/or a multi-media module.
  • the modules preferably include digital signal processing sub-systems which may be of a single design and programmable as appropriate.
  • the modules may comprise pre-processors for pre-processing information prior to transfer to the main body to reduce the burden on the processor in the main body.
  • the module may be movably mounted on or relative to the main body, and in particular to the display on the main body—for example it may be hinged pivotally or rotatably mounted.
  • the device may be configured for connection with the Internet.
  • a communication system for a bar code scanner comprising a control host, a scanning control object working therein and a remote client associated with the bar code scanner wherein the scanning control object communicates with the remote client to control the bar code scanner and the scanning control object is implemented as an OLE control. Accordingly there is provided a system capable of seamless communication between the scanning control and the remote client.
  • the host and the scanning object control may communicate and integrate via interfaces.
  • the scanning control object may create separate threads of execution for controlling communication with the remote client.
  • the separate threads of execution may include send, receive and synchronize bar code scanner transaction commands.
  • the scanning control object may be arranged to communicate with the remote client over an Internet or Intranet link and/or by wireless communication.
  • FIG. 1 is a perspective view of an optical reader according to the present invention from above and the rear;
  • FIG. 2 is a perspective view of the optical reader of FIG. 1 from above and the front;
  • FIG. 3 is a perspective view of the optical reader from the front and tilted upwardly;
  • FIG. 4 is a view of the optical reader from the front
  • FIG. 5 is a view of the optical reader from below
  • FIG. 6 is a view of the optical reader from above showing hidden detail
  • FIG. 7 is a side view of the optical reader showing hidden detail
  • FIG. 8 is a sectional view of the optical reader along the line A-A shown in FIG. 7 ;
  • FIG. 9 shows a portable computer device according to another aspect of the invention.
  • FIG. 10 is a block diagram of an image capture module for the device of FIG. 9 ;
  • FIG. 11 is a block diagram of a multi-media module for the device of FIG. 9 ;
  • FIG. 12 is a perspective view of a variation of the device of FIG. 9 ;
  • FIG. 13 is a block diagram showing the components of a distributed mail delivery service according to another aspect of the invention.
  • FIG. 14 is a flow chart showing operation of a client portion of the service of FIG. 13 ;
  • FIG. 15 is a flow chart showing operation of a server portion of the service of FIG. 13 ;
  • FIG. 16 illustrates a block diagram of a conventional wireless communication system with a terminal emulation program installed on the mobile units
  • FIG. 17 illustrates a flow chart illustrating an access point's action upon receiving a packet from a mobile unit according to the prior art
  • FIG. 18 is a block diagram of a general purpose interface reader application according to another aspect of the invention.
  • FIG. 19 shows the interface between a scanning control and a control container according to a further aspect of the invention.
  • FIG. 20 shows multiple threads of execution maintained by the control of FIG. 18 ;
  • FIG. 21 shows schematically the packaging of the products for shipment according to an embodiment of the present invention
  • FIG. 22 is a flow diagram illustrating the operation of the software within the scanner
  • FIG. 23 is a sectional view of a hand-held scanner together with a host computer
  • FIG. 24 is a perspective view of the arrangement of FIG. 23 in use
  • FIG. 25 shows a printer/scanner assembly suitable for use with the present invention.
  • FIG. 26 shows a further printer/scanner assembly.
  • the optical reader has a rear end 4 and a generally planar front end 5 , an upper face 2 a and opposed to that a lower face 2 b.
  • the optical reader includes a generally bar-shaped elongate housing indicated generally by the reference numeral 1 , having two generally opposed long broad upper and lower faces 2 a, 2 b (see also FIG. 7 ), two generally opposed long, shallow side faces 3 , a rear end 4 and a front end 5 (see also FIG. 6 ).
  • the upper and lower faces 2 a, 2 b of the reader comprise side edges having substantially straight front portions tapering inwardly towards the front edge which is of convex shape having a large radius of curvature.
  • the rear portions of the side edges curve inwardly and meet so that the rear end 4 of the housing is generally elliptical in shape when viewed from above.
  • the rear end is interrupted by a recessed connector 6 which is described in more detail below.
  • the housing is configured to be held by a user with the rear end mounted in the palm of the user and it will be seen, therefore, that the curved end of the housing when viewed from above will facilitate holding by the user.
  • the side faces 3 of the housing comprise substantially parallel downwardly curved long edges and a substantially straight front edge.
  • a bulbous convex rear portion 7 extends from the rear end of the upper edge to approximately the centre of the lower edge.
  • a concave groove 8 is provided in the frontward part of the bulbous portion 7 extending around both sides of the bulbous portion 7 to approximately the mid point of the bulbous portion 7 on either side.
  • the reading arrangement may be any known conventional arrangement, for example a “flying spot” optical scanner or a “field of view” optical reader.
  • the arrangement will include a light generating source such as a laser diode, a beam focusing or directing arrangement and a light receiving device.
  • a rapidly oscillatable scan component such as a mirror is provided to scan the light beam across an indicia to be read.
  • the laser diode itself can be oscillated.
  • the reader is a field of view optical reader a charge coupled device (CCD) array, or a photodetector arrangement is provided to detect the reflected light beam.
  • CCD charge coupled device
  • a scan trigger 9 is provided on the upper surface 2 a of the housing 1 .
  • the trigger 9 comprises a cut-out strip extending transverse to the longitudinal axis of the housing 1 and across the whole of the upper face and part of each of the side faces 3 and is situated approximately half way along the upper face 2 a.
  • the trigger 9 is activated by depression and is positioned along the housing 1 such that it is easily actuable by the operator when the reader is held in the operator's hand.
  • the trigger mechanism itself may be of any known arrangement; for example the trigger may be spring-loaded and have contacts which form a circuit with contacts within the housing when the trigger is depressed to actuate the reading arrangement.
  • Power may therefore be conserved as the reader will only be activated when the trigger is depressed enabling the operator to leave the reader idle when no indicia are to be read.
  • the trigger is positioned with ergonomic considerations in mind, the reader can be simply and quickly operated by the user with minimum discomfort.
  • a scanning window 10 is positioned on the front face 5 of the reader. Light generated by the reading arrangement passes through the window 10 and is reflected and scattered back through the window 10 by a bar code symbol 11 . Accordingly the reader can be easily and accurately aimed at the bar code symbol 11 to be read (as shown illustratively in FIG. 2 ). As a result the bar code symbol 11 can be rapidly located by the user and read by the reader with a minimum amount of time wasted attempting to locate the bar code symbol 11 . Accordingly both operator time and usage time can be reduced which is of particular relevance in battery-powered hand-held readers.
  • the batteries 12 for the hand-held reader are stored in the bulbous portion 7 towards the rear and aligned with the longitudinal axis of the reader.
  • the batteries 12 are disposed along a curved surface matching the curvature of the bulbous portion.
  • a strap 13 can be attached to the reader, for example towards the rear of the bulbous portion 7 for placing around the operator's wrist such that, in the event of the reader being inadvertently released from the grip of the user, it is still held to the user by the strap 13 .
  • a keypad 14 and a display 15 are also provided on the upper face of the reader.
  • the keypad 14 is not shown in FIG. 6 for the purpose of clarity).
  • the keypad 14 may be used to initialize the reading arrangement such that identification information concerning the user is entered into the system.
  • the keypad 14 may be used to enter predetermined codes or information concerning modes of operation of the reader or to carry out cancellation or manipulation operations on information provided by the reader.
  • the display 15 may display information relating to the mode of operation of the reader, or display check information relating to the item carrying the bar code symbol being read together with background information such as the time, date, and confirmation of the operator's identity.
  • the display 15 is a liquid crystal display (LCD).
  • the reading arrangement can process information derived from the bar code symbols directly or can send raw data to an external processing device which can then process the information accordingly.
  • information derived by the reader from bar code symbols can be transferred to a memory device in order that a database of information can be built up. For example where the reader is used at a point of sale, buying patterns can be stored and analyzed. Alternatively, if the reader is being used for inventorying purposes then the inventory information can be stored.
  • the optical reader can transmit information in a variety of manners. In the embodiments shown various different transmitting devices are provided; in practice only one or more of the devices need be provided depending on the particular use to which the reader is to be put. For example the information may be transmitted by an acoustic modem 16 .
  • information can be stored in a buffer memory within the reader and then down-loaded by the acoustic modem 16 at predetermined intervals.
  • the display 15 could indicate when information was to be down-loaded.
  • an interface connector for example an RS41 connector is designated by reference numeral 6 and provided at the rear of the reader. Suitable cabling can be inserted into the connector 6 to down-load information or alternatively to load data into the reader for example relating to the mode of operation.
  • the display 15 could provide an indication of the functioning of the connector.
  • the cable could be permanently connected to the reader as the connector 6 is provided at the rear of the reader and hence would not be obscured by the user's hand.
  • the connector 6 could be connected to a cable for loading or down-loading of information when required and, for example, when indicated by display 15 .
  • a radio 17 or other transmitting device can be provided within the housing 1 to allow real time data communication.
  • the radio 17 could comprise a transmitter and a receiver in order that information can be sent to and from a remote processor.
  • the radio link could be replaced by an infra-red communication link or other wireless link of known type. Because the reader is of ergonomic design, the transfer of information is easily carried out while the reader is actually in use, if required.
  • the reader may be configured for connection to a telecommunications network or computer network, for example the “Internet”.
  • the reader may be of particular use is in relation to the worldwide web.
  • the universal resource locater URL
  • those URL's are long and complex, and are time consuming to enter and check manually.
  • the URL can, despite many checks, still give rise to error.
  • the problem is exacerbated in the case of computer illiterate users.
  • the proposed manner of overcoming this problem is to encode the URL address in a bar code symbol and read the bar code symbol with the reader for automatic access to the corresponding web site, which will be quick and accurate, giving rise to far less margin for error.
  • the reader may be used to interface with a terminal for entry of the URL address or could be used independently.
  • one or more finger grips may be provided at locations where, in use, the operator's fingers or other parts of the operator's hand would contact the reader.
  • the finger grip would comprise a molded rubber portion having raised elements to achieve traction on the finger or palm.
  • Such finger grips could be provided, for example, on the bulbous portion 7 (as shown schematically in FIG. 5 by reference numeral 18 ) or the concave groove 8 therein, on or in the vicinity of the trigger portion or in areas of the upper surface 2 a where the operator's thumb might rest.
  • the hand-held optical reader described herein is ergonomically shaped for maximum user ease and comfort, allowing increased efficiency and user-friendliness.
  • Features such as the trigger 9 and finger grips 18 are positioned for optimum user operability. It will be appreciated that such features may be presented symmetrically in order to allow the terminal to be used by either left or right-handed users, or alternatively the handset may be produced in both left and right-handed versions.
  • the reading window 10 is positioned for improved accuracy and ease of use, and features such as the key pad 14 and display 15 are positioned for ease of access and reference by the user.
  • the device may be either wireless or connected to a central processor by a cord leading from the connector 6 provided at a convenient position on the terminal.
  • the device can be powered by batteries 12 located conveniently along the curve of the bulbous grip portion 7 or could in the alternative be powered by a removable, rechargeable battery pack or via a cord into the above-mentioned interconnector or another connector.
  • FIG. 9 a data collection device comprising an improvement over known arrangements.
  • the device comprises a portable hand-held computer for collecting data and down-loading the raw processed data to a central or peripheral device.
  • the device designated generally as 20 comprises a main body 21 and interchangeable data collection modules 22 a, 22 b, 22 c.
  • the main body 21 is provided internally with data processing means (not shown) and also comprises a display screen 23 , for example an LCD display screen capable of displaying video images, a data collection module interface 24 , an optional input information keypad 25 and a communication link 26 which may comprise radio frequency or infra-red transmitting means or an interface for down-loading information to a central or peripheral device via a physical cable.
  • a display screen 23 for example an LCD display screen capable of displaying video images
  • a data collection module interface 24 an optional input information keypad 25 and a communication link 26 which may comprise radio frequency or infra-red transmitting means or an interface for down-loading information to a central or peripheral device via a physical cable.
  • the LCD display 23 and input keypad 25 are optional features.
  • the main body is shown schematically in FIG. 9 ; in practice it could assume an ergonomic shape such as that shown in FIGS. 1 to 7 , suitable interfaces etc. being positioned as appropriate, for example at respective ends of the module.
  • the device may transfer information to a host via any electronic data transfer scheme—for example the system could also use cellular-based telephone channels.
  • the device could be configured for connection to a telecommunications network or computer network, for example the “Internet”.
  • the data collection modules are interchangeable with one another and may be, for example, CCD (Charge Coupled Device) based image, video and bar code symbol data capture modules, audio transducers for collecting and receiving sound information, laser image scanners or combined multi-media data collection modules.
  • CCD Charge Coupled Device
  • An image capture module using a CCD could be used for capturing images of objects for storage or use by a processor application carried out by the main body or by a host, such images including for example people, landscapes, homes and vehicles for reference applications.
  • the imager could be used for one dimensional or two dimensional bar code symbols for decoding data capture.
  • a laser optical reader scanning module and decoder would be used generally for bar code data capture and decoding only.
  • a multi-media module 22 is shown in FIG. 11 and discussed in more detail with reference to that figure below.
  • Such a module could contain a circuitry for image/video capture, audio capture and playback and a cellular telephony sub-system.
  • Such a module would be of particular use in teleconferencing and live video communications over cellular networks from the portable unit.
  • the desired data collection module 22 a,b,c is connected to the main body 21 by the interface 24 on the main body which mates with an interface 27 on the module.
  • Any suitable known interface components can be used but the components should be strong, relatively inflexible, durable and suitable for frequent disconnection and reconnection.
  • the modules are powered by a power supply within the main body of the portable computing device and may be partially or totally controlled by software drivers within the main body.
  • dedicated signal processing electronics within the modules can be arranged to perform up-front data processing as a result of which a common bus architecture to the main body is shared by all of the modules. As a result their interchangeability is enhanced.
  • FIG. 10 A suitable architecture for an optical media capture module 28 (for example containing a CCD imager or laser scanner) is shown in FIG. 10 .
  • Each module may contain only the media capture electronics without any pre-processing capability or, as discussed above, preferably contains dedicated or programmable analog components 32 and digital signal processing (DSP) components 33 to ease the processing load placed on the central processing unit of the main body 21 .
  • DSP digital signal processing
  • the digital signal processing sub-system 32 , 33 in the module may be of a single electronic design common to different modules, and which is either programmed in the factory or customized on purchase or programmable by the user to perform the functions in processors if required by the particular media module.
  • This function programmability is expected to be mainly through software, since the module processing electronics are flexible, and these software components may be one-time or dynamically loaded to the module via the main body central processing unit. Accordingly the range of components that require manufacture is decreased, appropriate dedicated parts of the components being selectable for a desired use, or a portion of the mode of operation being borne by software.
  • the module 28 collects information via the CCD imager or laser scanner in analog form which is transferred either serially or by conversion into a parallel format.
  • the analog signal is then processed by the digital signal processing sub-system 32 , 33 and forwarded to an interface bus 34 from which the information is transferred to the main body of the portable computing device.
  • the signal processing electronics preferably perform up-front data processing such that a common bus architecture to the portable computing device 21 can be achieved.
  • the multi-media module 22 includes circuitry for image/video capture, audio capture and playback and a cellular telephony sub-system.
  • the module is arranged to receive and transmit video information independently of the main body of the portable computing device (although the video information may also be accessed by the main body of the portable computing device in order to monitor or review the information). Accordingly a radio frequency antenna 41 is provided in the module for reception and transmission of radio frequency information.
  • a radio frequency front end processor 42 and codec 43 cooperate to perform digital to radio frequency/radio frequency to digital format conversions.
  • Video information received via radio frequency is decompressed by an optional digital signal processing sub-system 44 for presentation, where appropriate, to the CPU of the main body 21 of the portable computing device.
  • a further digital signal processing sub-system 45 is provided for other purposes (discussed in more detail below) and preferably performs partial video processing, the CPU of the personal computing device completing the process for displaying the results.
  • the second digital signal processing sub-system 44 may also be required for the interface to the radio frequency codec 43 of the cellular sub-system; this depends on the amount of processing required for each function.
  • Video information transferred to the main body 21 of the portable computing device is displayed on the LCD display 23 .
  • the radio frequency receiving, transmitting and processing apparatus 41 , 42 , 43 , 44 discussed above can optionally reside in a separate component such as a PCMCIA or other type plug-in card for example of the type manufactured by Symbol Technologies, Inc.
  • the circuit forms an integral part of the multi-media module to provide a full wireless multi-media solution for the hand-held computing system.
  • the wireless link may conform to any desired cellular standard (for example CDMA, GSM, AMPS) that is preferably selected to allow the widest application of the invention.
  • the multi-media module 22 further includes a microphone/speaker component 50 which receives and transfers input analog information to an analog to digital converter 51 , 45 comprising an up-front voice-band converter 51 which transfers information either serially or in parallel to the digital signal processing sub-system 45 .
  • information may be transmitted in the other direction, for example digital information from the main body of the portable computer device is converted to an analog audio signal at converter 45 , 51 and converted to sound by the speaker component 50 .
  • Base-band digital audio data is processed by the digital signal processing sub-system 45 which can be reprogrammed as appropriate to perform appropriate audio codec processing.
  • Voice-band (VB) signals are converted by the converter 45 , 51 as discussed above.
  • Video data is captured by a CCD imager 52 compressed by a digital signal processing sub-system 53 and forwarded to the radio frequency codec 43 .
  • the main body of the portable computing device need not be involved in this data transfer unless the user decides to monitor the transfer.
  • a software controlled process may be initiated whereby the video data is sent to the CPU of the main body 21 of the portable computing device for display before compression as well as to the radio frequency codec 43 for transmission allowing the captured image to be viewed while or before transmitting.
  • the multi-media module 22 is preferably mounted so as to be rotatable through at least 180° when connected with the main body of the portable computing device. This may be achieved by hinging or pivoting or otherwise arranging a portion of the main body or by similarly arranging a portion of the module. This positioning allows capture of the user's image while the user can simultaneously view the LCD screen display for received video data or images. The rotation of the image capture portion of the module permits capture of images of objects in front of the user while the user is looking at the screen.
  • the microphone and speaker combination may be arranged to face the user in a preferred, standard configuration of the device as a whole.
  • the microphone may further be configured to swing or swivel away from the main body of the portable computer device and from the user holding the device if the desired audio data to be captured emanates from another direction.
  • FIG. 12 An appropriate arrangement including a pivotable module head 22 and a swingable microphone boom 30 is shown in FIG. 12 .
  • an upper portion 21 a of the main body 21 is hinged to the remainder of the main body and rotatable around an axis A as shown by arrow A′.
  • the multi-media module 22 is connected to the upper portion and the upper portion has been swivelled such that a CCD image capture device 29 faces the user.
  • the pivotable microphone boom 30 also extends from the multi-media module 22 .
  • a number of pivoting orientating arrangements can be provided, for example a hinge or pivot could be provided within the structure of the module 22 , and the module could also be arranged to rotate through 180° about an axis transverse to axis A.
  • the microphone boom 30 can be pivotally mounted to the module 22 in any known manner.
  • the invention can be used to provide modular programmable multi-media facilities in the hand-held form factor by portable computing devices such as hand-held terminals or “portable digital assistants”.
  • portable computing devices such as hand-held terminals or “portable digital assistants”.
  • the invention can be used for CCD based bar code decoding (in one or two dimensions at least) by industrial and commercial users, for example for point of sale processing or inventorying; portable, cellular video conferences by travelling business users; and digital photography/image capture for insurance assessors, sales professionals among many other applications that will be apparent to those skilled in the art.
  • the portable modules discussed above may be used in cordless scanning implementations for example in point of sale applications. Problems arise where such portable devices are not tethered in some manner as it is possible that they will be lost, removed from the store, or otherwise misappropriated.
  • the scanner can have some form of internal alarm which sounds if the scanner is taken more than a predetermined distance from the base.
  • the scanner communicates with the base by wireless communications such as radio communication
  • the software protocol managing the radio session could control the range finder and alarm.
  • an alarm or “beeper” can be placed in the scanner and triggered by a signal from the base controlled by, for example, a button on the base pressed by the user. Accordingly when the user pressed a button the scanner could be located by following the noise of the sound.
  • a further use for portable computer devices is the electronic mail box or mail delivery service application.
  • the invention provides an improved architecture for electronic mail box systems including portable computer devices.
  • the improved system uses a distributed message delivery service architecture, based on cooperating processes.
  • a particular machine is designated as a server and its address becomes public on the local network.
  • the server is responsible for delivery of mail and reception of mail and also provides other machines on the local network with information regarding user message status, for example whether a message has been received for an identified user, in which case the message can be forwarded to the user.
  • the remaining machines on the network are designated the client and carry out a corresponding process, in particular providing a user interface to the distributed mail delivery service.
  • the client portion can present various options to the user for example the options of hearing audio messages or viewing text or still images.
  • the options presented will, of course, be based on the resources available to a particular machine, for example whether it has a sound card and/or graphics capabilities.
  • the server 100 includes an antenna 102 for communicating with remote clients 101 a, 101 b (for example portable computer devices), a transmission and reception module 103 , a message coder and decoder 104 (protocol stack) and a processing module 105 (query engine) for handling queries from clients 101 , for example regarding a particular user message status, accessing any such messages etc. information is accessed from a memory 106 which may be a data base storage module.
  • the processor 105 also communicates with a mail user agent (MUA) module 107 allowing user interface with the server 100 .
  • the server 100 is further in communication via the mail user agent 107 with a local and/or wide area network designated generally as 108 .
  • the service may form part of, or be configured for connection with a telecommunications network or a computer network, for example the “Internet”.
  • Each client 101 a, 101 b includes various modules common with the server together with further modules specific to the needs of the client.
  • the client 101 includes an antenna 109 for communication with the server and a transmitting/receiving module 110 communicating with a message coder and decoder 111 .
  • the module 110 will include the hardware necessary for carrying out the transmitting/receiving steps but it will be recognized that at least some of the functions provided by the module will be capable of being provided in software. Indeed, generally, reference to modules need not be to dedicated hardware but extends to programmed or programmable software arranged to emulate hardware performance.
  • the message coder and decoder 111 interacts with the mail user agent 112 providing user interface.
  • the mail user agent 112 communicates with a local data storage device 113 and with optional modules such as a display driver 114 and/or a sound driver 115 (see client 101 a ).
  • FIG. 14 displays the steps carried out by the user in a typical “client process”.
  • the client Auto-configures itself based on the resources (for example sound or graphics) available on the machine [step 120 ].
  • the user logs in and enters a password [ 121 ] and a connection is established between the client and the server [ 122 ] at which stage information entered during the log-in and password process is sent to the server for verification [ 123 ]. If, however, the server is not ready for communication then the procedure is exited [ 124 ] and must be recommenced at step 120 or step 121 .
  • the process After the user status is queried [ 123 ], if the user or password is unknown to the server the process returns to step [ 121 ] and the log-in and password procedure is re-initiated. Otherwise the options available to the user are retrieved [ 125 ] in steps discussed in more detail with reference to FIG. 15 and displayed as headers to the user [ 126 ]. The user then enters his selection [ 127 ] and the selection type is determined [ 128 ].
  • the client assesses whether the user wishes to view a message [ 129 ] and if so retrieves the selected message from the server [ 130 ] in a series of steps described in more detail below with reference to FIG. 15 .
  • the client determines the message type, for example audio or visual [ 131 ] and dependent on the message type either displays the text [ 132 ] or plays the sound [ 133 ].
  • the client then returns to step [ 127 ] and awaits a further user selection.
  • step [ 129 ] If at step [ 129 ] the user indicates that it is not desired to view a message then a message is created [ 134 ], recorded [ 135 ], the data of the message is packaged appropriately for transport [ 136 ], for example by the protocol stack 111 shown in FIG. 13 , and is sent to the server [ 137 ] by the transmitter 110 and antenna 109 . The client then returns to step [ 127 ] and awaits a further user selection.
  • the client machine includes suitable input means, for example a keypad and display means for example an LCD display for the entry of user selection choices, message information and for the display of messages.
  • suitable input means for example a keypad and display means for example an LCD display for the entry of user selection choices, message information and for the display of messages.
  • a speaker and microphone may be provided for the recordal and playback of audio messages.
  • a portable computer device such as that shown in FIG. 9 may, for example, be used as the client 101 . In that case, auto-configuration of the client is carried out partially in dependence on the type of module 22 inserted into the main body 21 of the portable computer device 20 .
  • step [ 140 ] the server operates as a continuous process but, in order to save system resources, is mostly in a stand-by mode where it simply listens to the local network. Accordingly in step [ 140 ], on initiation, an open end connection is established and the server monitors the connection [ 141 ]. If any queries are received [ 142 ] the server proceeds to the subsequent steps but otherwise continues to monitor the connection [ 141 ]. On reception of a query the server “wakes-up”, interprets the query to establish which of the internal modules of the server is designated [ 143 ] (for example data base storage 106 or mail user agent 107 ) and if the request is valid [ 144 ] the request type is determined [ 145 ].
  • [ 143 ] for example data base storage 106 or mail user agent 107
  • the request may be a HEADER which is sent to the client to present user message headers (corresponding to steps [ 125 ] and [ 126 ] shown in FIG. 14 ); accordingly at the request for a header [ 146 ] appropriate information is retrieved [ 147 ], is packaged for transport [ 148 ] for example at modules 104 , 103 of the server and is sent to the client [ 149 ].
  • the server then returns to monitoring mode [ 141 ] listening to the connection with the remainder of the network.
  • the server retrieves any user messages [ 147 ] that are stored in respect of the identified user (for example on the basis of the log-in or password information entered at the client) and the data is packaged and sent as described above in relation to steps [ 148 , 149 ]. The system then returns to monitoring mode [ 141 ].
  • steps [ 142 - 147 ] are carried out by the query engine 105 of the server, user message data being retrieved from the memory device 106 of the server.
  • step [ 144 ] the request is not valid then the user and request are logged and an error message is sent back to the client [ 151 ]. The system then returns to monitoring mode [ 141 ].
  • the system described above requires far less data storage on the client terminal/computer and thus is particularly (although not exclusively) suitable for hand-held computers with basic network capabilities.
  • the system thus resolves the problem of mail box locations as well as releasing the hand-held host and the data storage and retrieval responsibility by treating the mail delivery service as two cooperative and independent processors that communicate with each other using basic network protocols.
  • the distributed mail delivery service uses the underlying network to actively present enquiries to the server regarding the message status relating to a particular user, rather than using a directory structure and relying on a file system. Because all enquiries are directed to one server, multiple connections for a single user can be identified and refused, the server is the only point of connection to external entities, offering a more secure delivery system and the server offers a view of the mail delivery service to the end user which is independent of the actual matter stored by the server.
  • clients are relieved of the responsibility of storing or directly retrieving any of the actual data.
  • Messages are delivered via the network on a demand basis, that is when required by the user, and the client portion of the distributed mail delivery service simply translates user requests into a series of commands which are forwarded to the server in the form of queries. If the queries are validated the server returns the necessary data to a client in response to the queries.
  • the server may be initially decided that the server should store messages using a simple mail box scheme, but if the capacity or speed or efficiency of the system subsequently needs to be enhanced as a result of the increased burden placed on it by an increasing number of users and messages, the server can revert to using a complete database management system. Any such modifications will, however, remain hidden from the client portion and the client portion can effectively remain unaware of the underlying structures of the server indefinitely.
  • the client portion may be modified for example to move from a character-based user interface to a graphical-type interface in which case the server may remain unaware of the modifications as the basic data query and exchange mechanism is unchanged, the server remaining unconcerned about the manner of data presentation at the client portion.
  • the client portion may run on a PC compatible platform although it could be ported very simply to other platforms.
  • the server can operate on UNIX or DOS platforms.
  • the client requires less than 256 kbytes of local storage.
  • the proposed delivery system offers multiple advantages over current mail box schemes, providing flexible and independent modules which are simpler to maintain and modify and which offers a generic mechanism by which data transfers can be implemented over data networks. As it is a distributed system it does not require the presence of a network file system and simply relies on local storage.
  • a server is provided on each local network for dealing with the clients within a local network and also for communicating with other servers on other local networks the roaming capabilities of the system are enhanced.
  • the distribution of mail processing between the various local networks is in contrast to the centralized hub system in conventional mail delivery systems and allows simplified and accelerated mail processing and transfer in combination with a roaming portable computer.
  • Part 1 “Symbol” Terminal Emulator Program (STEP) and Pen-Based mobile Units/Terminals.
  • Symbol (a Trade Mark) terminal emulator program is a tool used to format applications for pen-based mobile units such as the mobile unit 21 shown in FIG. 9 .
  • the STEP resides in the mobile units 21 and works with an enabler development system 160 on a host computer 162 to execute a predefined set of commands sent from the host computer 162 .
  • the enabler development system 160 includes an enabler server 164 , an enabler application program interface 166 and a timer 168 .
  • the enabler development system 160 receives input from the Spectrum24 access point unit 170 .
  • the host computer 162 is controlled by a terminal 172 to run host applications 174 .
  • the STEP provides the mobile units 21 with the interface and logic functions necessary to communicate over the radio network, and controls all input, output and display functions at the mobile unit level, including keyboards, displays, scanners and peripherals, and printer support.
  • the STEP provides commands that allow the administrator to create a selection of data entry fields for the mobile unit operator. For example, these commands would permit the operator to: (a) enter data from a keyboard and scan bar codes; (b) send multiple messages to the host in the same transaction; and (c) control the type of data entered and validate entered data. Further, ,for display purposes STEP allows the administrator to (a) display data at any location on the mobile unit screen; (b) clear the entire mobile unit screen or clear a single line; (c) save and restore the mobile unit screen; and (d) control the backlighting feature to view the screen in the dark.
  • the STEP acts as a power manager to reduce demands on the batteries in the mobile units 21 , enabling them to operate longer between charges and extending their overall life.
  • forms can be created and displayed on the display screen 23 (shown in FIG. 9 ).
  • Forms can include messages, prompts and data entry fields. This permits an operator to recall a stored form for execution on the mobile unit 21 ; repeat the execution of a stored form for on-line batch processing; and erase all stored forms and determine the date and time of the last form definition.
  • the STEP enabled mobile units 21 allow the host computer 162 to read data files stored in the unit 21 ; sound the mobile unit's 21 alarm; interrupt mobile unit 21 input activity; and log off the mobile unit 21 from the host computer 162 . This allows the operator to use the mobile unit 21 to collect data without being logged on to the host computer 162 ; set and save system parameters; download files from the host computer 162 to the memory in the mobile unit 21 ; and perform other maintenance tasks.
  • FIG. 17 illustrates a typical conventional flow chart of the actions taken by the access point 170 when it receives a packet of data from he mobile unit 21 on the wireless network. If the packet is a registration packet, determined at step 200 , then the access point 170 processes the information carried by the packet at step 214 . The type of association is determined by examining the IP address of the mobile unit's 21 home access point and does the control message exchanges accordingly at steps 216 and 226 . If the packet is not a registration packet, as determined by step 200 , then the packet is decapsulated at step 202 .
  • the short term address mapping tables (ST-AMT) of the access point 170 has an entry for the packet's source MAC address, determined at step 204 , then the packet has originated from the mobile unit 21 that is away from its home stationary data link (SDL) network and processing passes to step 218 .
  • the access point 170 encapsulates the packet within a UDP packet with the IP destination address set to that of the mobile unit's 21 home access point.
  • the access point 170 encapsulates the packet within an UDP packet with the IP destination address set to the destination mobile unit's local access point.
  • the packet's destination MAC address is a broadcast address, determined at step 208 , then the packet if forwarded at step 222 on its wired and wireless interfaces. If the destination MAC address in the packet appears in the access point's mobile host table (MHT), determined at step 210 , then the packet is encapsulated within a wireless link layer packet and forwarded on the wireless interface at step 224 . Otherwise, the packet is forwarded on its wired interface at step 212 .
  • MHT mobile host table
  • Part 2 Assigning Domains and IP Addresses to Said Pen-Based Mobile Units 21 .
  • the following embodiments of the present invention deal with assigning domains and IP addresses to the mobile units 21 to operate in a wireless LAN technology, such as the previously discussed Spectrum One and Spectrum24 systems.
  • the domains and IP addresses are hard coded.
  • the hard coded embodiment involves setting the domain and IP address of the mobile unit 21 in the configuration files associated with the Spectrum24 drivers and protocol stacks.
  • the hard coded embodiment provides a relatively simple implementation of domain and IP address assignment for Spectrum24 network installations when only a few mobile units 21 are used that always use the same APG on the same network.
  • a high degree of security is provided since the ability to detect and assign domain and IP addresses are available only in the configuration area, not in the operational area.
  • each mobile unit 21 ensures that the domain and IP address information are non-volatile. This insures that even cold booting the mobile unit 21 will not require reconfiguration. All the access points 170 in the target APG can be configured to use the hard coded domain.
  • the server can be set up to reserve permanently (without any timeout) the hard coded IP addresses for use by each hard coded mobile unit 21 .
  • Another embodiment of the present invention involves the application-selection of domains and IP addresses.
  • This embodiment is suitable for situations where a system administrator manually configures the mobile units 21 before their use by operators by setting the domain and IP address.
  • a system administrator manually configures the mobile units 21 before their use by operators by setting the domain and IP address.
  • mobile units 21 are the only nodes on the network or when the system administrator set domains and IP addresses by referring to a master list maintained on a network server the application-selection system is advantageous.
  • the application-selection method allows for the dynamic adjustment of domain and IP addresses under application control across APGs and networks.
  • a further embodiment of the present invention involves the access points-assignment of domains and server-assignment of IP addresses. This method is suitable when the manual assignment of domains and IP addresses is impractical due to many mobile units 21 or due to the complexity of the network.
  • AP-assignment of domains requires configuring access points 170 to allow for an automatic configuration.
  • access point 170 access control list (ACL) features security can be enhanced by giving the access points 170 a list of the MAC-layer addresses of all the mobile units 21 allowed. This list can be larger than the number of mobile units 21 actually being serviced at any given time, allowing the timesharing of the capacity of the access point 170 among a large set of intermittent use mobile units 21 .
  • ACL access control list
  • Server-assignment of IP addresses requires the existence of a mechanism within the protocol stack, supported by services and utilities in both the server and the mobile unit 21 , to allow dynamic allocation of IP addresses.
  • BOOTP and DHCP are two common mechanisms for dynamic allocation.
  • BOOTP works by having a file on the server for each possible mobile unit 21 , selected by the mobile unit's 21 unique MAC-layer address, that provides the IP address to be used for that mobile unit 21 .
  • DHCP works by having a database on the server that records the IP addresses that are in use (by MAC-layer address) and the IP addresses that are available for dynamic assignment.
  • the database is searched for the MAC-layer address. If an IP address is already allocated to this mobile unit 21 , the it is simply returned. If no IP address is allocated to the mobile unit 21 , and one is available for dynamic assignment, it is allocated to the mobile unit 21 , recorded in the database and assigned to the mobile unit's MAC-layer address, and returned to the mobile unit 21 .
  • the DHCP server can set to timeout when a dynamically assigned IP address has not been used for some time and return it to the available list or to keep IP addresses permanently assigned once allocated to a mobile unit 21 .
  • the domains and IP addresses can be stored in volatile storage, but would need to be reentered following a reboot. However, the necessary address information can be stored onboard the flash of the mobile unit 21 , or on the Spectrum24 adapter card, or on RAM disks or PCMCIA storage cards.
  • the AP/server-assignment methods provide the ability to program ACL information via a personal computer attached to the same hardwired router as the access point 170 . Further, the AP/server-assignment methods allow for automatic assignment of complying domain and IP addresses as needed, and allow mobility across APGs and networks.
  • the invention addresses the problem of the necessity of a specialized program for parsing and interpreting high density data records embedded in bar code labels.
  • it is proposed to distribute not only the bar code data on a high density label, but also information describing how to create an interface capable of reading the data from the data record label.
  • the mobile unit includes a reader or Browser for scanning a high density bar code label that contains a program script such as HTML, VB script or a specialized compressed version of either.
  • the script is parsed and interpreted by Browser which constructs a user interface at run time and presents it to the user.
  • the user interacts with the interface by scanning data labels and interacting with any of the program's controls presented to the user to properly process the data.
  • a new data or interface level may be printed by the user that can be applied to the object being processed. It will be appreciated that, as bar code label densities increase, the capability of storing the actual interface and the data record in a single bar code label will appear.
  • FIG. 18 shows the system of the invention in more detail.
  • the system includes a Browser 300 to which bar code information 301 is input.
  • An interface 302 is constructed at run time and an interface control 303 is provided.
  • the Browser 300 further includes a bar code acquisition engine 304 , a parsing engine 305 , a printing engine 306 with a printed data interface 307 and a communications engine 308 with a communications input/output interface 309 .
  • the user interacts with the interface via a further interface 310 .
  • the shipper of the goods can distribute a program script label with the goods that is read by the receiver's Browser.
  • the program script label shipped with the goods contains the information required to allow the Browser to create an interface at run-time to read and process the data for the container of goods shipped.
  • Logistical systems benefit greatly from a system such as this, because unidentified materials in the field can quickly be identified and processed by any unit containing the Browser.
  • any computer system equipped with a general purpose interface reader application can create an interface “on-the-fly” that is capable of reading processing information on the accompanying data record labels.
  • a bar code scanning OLE (Object Linking and Embedding) COM (Component Object Model) object for communicating commands and bar code data over a wireless link.
  • OLE automation Object Linking and Embedding
  • the in-process OLE automation object controls a bar code scanning device over a wireless link on a remote client.
  • the remote device enables a bar code reader and collects the bar code information, returning the data over the wireless link to the OLE automation object.
  • OLE controls are re-useable software components designed to work in containers that support OLE 2.0.
  • OLE controls are more powerful and more flexible than previous systems such as VBX Custom Controls in particular as, unlike the VBX Custom Controls that they are replacing OLE controls support 32 bit environments and are not limited to Microsoft Visual Basic (Trade Marks).
  • OLE controls are designed to work in any container that supports OLE 2.0 including not only Visual Basic 4.0 and beyond but also OLE-enabled container applications such as Microsoft Office (Trade Mark). Additionally OLE controls work in third-party OLE-enabled applications in development tools.
  • OLE architecture enables different software objects to communicate to each other using a binary interface mechanism. This allows software objects to be developed separate from each other and bind very late at run time.
  • the software interface is a contract between the container and the control on how the two software objects will interact and exchange information.
  • FIG. 19 shows the general mechanism between a control 401 and its container 402 . As can be seen the mechanism includes standard compound document interfaces 403 and additional control interfaces 404 , each comprising multiple interfaces.
  • the scanning control appears to become a seamless part of the container's environment.
  • the two objects communicate and integrate with each other.
  • the scanning control 401 communicates over a wireless link 410 with a remote computing client 411 to control the bar code reading device 412 .
  • the scanning control 401 sends commands over the wireless link 410 by creating separate threads of execution 413 a to 413 d that send, receive and synchronize bar code reader transactions over the wireless link.
  • the OLE container 402 and control 401 communicate via lines 414 a to 414 f.
  • the OLE control includes a main control thread 415 which communicates with the OLE container 401 via lines 414 a, 414 b and with a first transaction thread A 413 a via a line 416 .
  • Each of the transaction threads 413 a to 413 d communicate along a respective line 414 c to 414 f with the OLE container 402 .
  • Each of the threads also outputs through a respective first line 417 a to 417 d to a transaction start dispatch function 418 and receives an input via a respective second line 419 a to 419 d from a transaction complete dispatch function 420 .
  • the transaction start dispatch function 418 communicates with a transport layer 421 in the remote client 411 via a line 422 and a transaction complete dispatch function 420 receives input from the transport layer 421 via a line 423 .
  • the remote client 411 includes a corresponding transport layer 424 which outputs via a line 425 to a data arrival handler 426 and receives an input via line 427 from a command complete handler 428 .
  • the data arrival handler 426 outputs via line 429 to a bar code device driver 430 and the command complete handler receives an input 431 from the bar code device driver 430 .
  • the bar code device driver 430 communicates with the scanning hardware such as a bar code reader 412 via a line 432 .
  • the invention comprises a significant development over previous architectures comprising implementation of a local bar code scanner resident on a machine running a COM object.
  • the architecture of the invention allows control of the scanner through the wireless interface.
  • DCOM distributed component object model architecture
  • the interfaces between the control container and the control itself are binary and can be implemented by the operating system as Remote Procedure Calls (RPC's).
  • RPC Remote Procedure Calls
  • the OLE control can be implemented as an Active-X control to control devices over an Internet or Intranet link.
  • This technology allows Web authors and developers to create a new generation of interactive Web pager and applications, for example Microsoft Internet Explorer 3.0 (Trade Mark).
  • This implementation is of particular benefit in proposed systems whereby users will wish to integrate bar code scanning capabilities into their Intranet/Internet-enabled applications.
  • the Intranet arises from the application of Internet technology to provide industrial strength mission critical applications to users within an organisation on an isolated LAN (Local Area Network) rather than for external connection to the global internet.
  • Single function handheld computing terminals can then be built that connects to the LAN and execute predetermined applications to reduce significantly the cost per client when installing a network system.
  • mission critical applications reside on the server, eliminating the cost of application deployment and lowering the cost of terminal configuration.
  • the data collected is transmitted and saved on the server so little or no local data storage is needed on the handheld terminal. It will be seen, therefore, that such a system provides an ideal forum for the OLE scanning control object discussed above.
  • FIG. 21 there is shown a collection of items 1300 which need to be returned to the vendor for a variety of reasons, for example incorrect shipment (wrong color, size, item number) damage in transit, to be returned for credit etc.
  • Each item 1300 carries a bar code symbol 1310 .
  • the individual items 1300 are to be placed in a container or returns box 1340 in which they will be shipped back to the supplier or vendor.
  • each bar code scanner incorporates a printer 562 , a keyboard S 62 ′, 1116 for entering textual information, and a host computer 560 which incorporates a computer memory for storing details of the indicia that have been scanned, and the information entered via the keyboard.
  • the host computer also incorporates a CPU having appropriate software.
  • the retailer first (at step 1360 ) uses the bar code reader to scan and read the bar code 1310 on the product 1300 . He then, at step 1370 , enters on the keyboard 562 ′, 1116 the reason for the return, or alternatively as required by the supplier a returns number.
  • the bar code details and the reasons are automatically added to a database maintained within the memory of the host computer 560 . It will of course be appreciated that in an alternative embodiment (not shown) the user could be required to enter the details on the keyboard before, rather than after, scanning the bar code symbol. In either case, once the item 1300 has been scanned it is then placed into the large container 1340 ..
  • step 1390 the process continues at step 1390 , with steps 1360 to 1380 being repeated if further items are to be shipped.
  • the retailer has finished, he presses a “done” key on the keyboard, at step 1400 , to advise the host computer that there are no additional items to be added.
  • the host computer 560 then encodes the database entries for PDF printing, and at step 1420 prints out a PDF bar code label.
  • the PDF label, 1320 contains a listing of all the items in the container 1340 and the reasons for their return.
  • the label is preferably self-adhesive, and the vendor merely secures it to the outside of the container before shipping.
  • the printer 562 could print the PDF bar code directly onto the surface of the container 1340 .
  • a further label 1330 showing the address of the consignment, may be printed out automatically.
  • the vendor also secures that to the outside of the container. The container can then be shipped.
  • the supplier On receipt of the container, the supplier simply reads the PDF label 1320 to determine which items are in the box, and the reasons for their return. Where the bar code incorporates return codes, the supplier can simply and easily determine whether the retailer has authorization to return those particular products.
  • the label may, in addition, contain encoded information identifying the particular retailer in question.
  • the bar code symbol 1320 is desirably a PDF symbol, which is automatically produced by the software contained within the host computer 560 . Details of the encoding method used by the software, which would enable a skilled man to devise appropriate software, are described in the above-referenced U.S. patent in common ownership with the present application.
  • FIGS. 23 to 26 illustrate various exemplary embodiments of the scanner/printer assembly.
  • reference numeral 510 generally identifies a lightweight (less than 1 lb), narrow-bodied, streamlined, hand-held, fully-portable, easy-to-manipulate, non-arm and wrist-fatiguing, scanning head supportable entirely by an operator for use in a scanning system operative for reading, scanning and/or analyzing symbols and aimable, both prior to and during reading thereof, by the operator at the symbol, each symbol in its turn.
  • symbol as used herein is intended to cover indicia composed of parts having different light-reflective properties.
  • the indicia may be industrial symbols, e.g. Code 30, Codebar, Interleaved 2 of 5, etc., or the omnipresent Universal Product Code (UPC) bar code symbol.
  • the indicia may also be composed of alphabetic and/or numeric characters.
  • the head 510 includes a generally gun-shaped housing having a handle portion 512 of generally rectangular cross-section, and a generally horizontally-elongated, narrow-bodies barrel or body portion 514 .
  • the dimensions and overall size of the handle portion 512 are such that the head 510 can conveniently fit and be held in the operator's hand.
  • the body and handle portions are constituted of a lightweight resilient, shock-resistant, self-supporting material such as a synthetic plastic material.
  • the plastic housing is preferably injection-molded and forms a thin, hollow shell whose interior space measures less than a volume on the order of 50 cu.in.
  • the body portion 514 has a front wall 516 , a rear wall 518 spaced rearwardly of the front wall, a top wall 520 , a bottom wall 522 below the top wall, and a pair of opposed side walls 524 , 526 that lie in mutual parallelism between the top and bottom walls.
  • a manually-actuable, and preferably depressible, trigger 528 is mounted for pivoting movement about a pivot axis on the head in a forwardly-facing region where the handle and body portions meet and where the operator's forefinger normally lies when the operator grips the handle portion in the intended position of use.
  • a plurality of components are mounted in the head and, as explained below, at least some of them are actuated by the trigger 528 , either directly or indirectly, by means of a control microprocessor 530 .
  • One of the head components is an actuable light source e.g. a semiconductor laser diode 532 or a light emitting diode, operative, when actuated by the trigger 528 , for propagating and generating an incident light beam.
  • the light beam is highly divergent, is non-radially symmetrical, is generally oval in cross-section, and has a wavelength above 7000 Angstrom units.
  • the laser diode 532 requires a low voltage, e.g.
  • a battery 534 which may be provided within the handle portion 512 or by a rechargeable battery pack accessory detachably mounted on the head, or by a power conductor in a cable connected to the head from an external power supply.
  • An optical assembly including a half-silvered mirror 537 and an optical train 538 , is mounted in the head, and is adjustably positioned relative to the diode 532 for optically modifying and directing the incident laser beam along a first optical path toward a reference plane which is located exteriorly of the head forwardly of the front wall 516 and which lies generally perpendicular to the longitudinal direction along which the incident laser beam propagates.
  • a symbol to be read is located at the vicinity of the reference plane, either at, or at one side, or at an opposite side, of the reference plane, that is, anywhere within the depth of focus or field of the optically-modified incident laser beam.
  • the depth of focus or field is also known as the working distance in which the symbols can be read.
  • the incident laser beam reflects off each symbol in many directions, and that portion of the reflected laser light which travels away from the symbol back toward the head is known herein as the returning portion.
  • the scanning mirror 540 is mounted on a scanning component, preferably a high-speed scanner motor 546 of the type shown and described in U.S. Pat. No 4,387,297, the entire contents of which are incorporated herein by reference.
  • the motor 546 has an output shaft on which a support bracket is fixedly mounted.
  • the scanning mirror 540 is fixedly mounted on the bracket and is driven in alternate circumferential directions over art lengths of any desired size, typically less than 360°, and at a rate of speed on the order of a plurality of oscillations per second.
  • the scanning mirror 540 and the shaft are reciprocally and repetitively oscillated so that the scanning mirror repetitively sweeps the incident laser beam impinging on the mirror through an angular distance or arc length at the reference plane of about 32° and at a rate of about 20 scans or 40 oscillations per second.
  • the returning portion of the reflected laser light has a variable light intensity due to the different light-reflective properties of the various parts that comprise the symbol over the symbol during the scan.
  • the returning portion of the reflected laser light is collected in the direction of arrow 548 by a generally concave spherical portion of the mirror 540 .
  • the generally planar mirror portion is integrally attached to the generally spherical mirror portion of the mirror 540 .
  • the spherical portion reflects the collected light through the optical train 538 , the half-silvered mirror 537 , and to a sensor means, e.g. a photosensor 550 .
  • the photosensor 550 preferably a photodiode, detects the variable intensity of the collected laser light over a field of view which extends along, and preferably beyond, the scan and generates an electrical analog signal indicative of the detected variable light intensity.
  • a signal processing means 552 mounted on a circuit board 554 , and operative for processing the analog electrical signal generated by the photodiode 550 into a digitized video signal. Data descriptive of the symbol can be derived from the video signal. Suitable signal processing circuitry for this purpose was described in U.S. Pat. No 4,251,798.
  • Other components within the head include drive circuitry for the motor 546 , an aiming light controller in the event that the laser diode 532 generates a laser beam which is not readily visible to the human eye, and a voltage converter for converting incoming voltage, e.g. from the battery 534 , to a regulated voltage suitable for energizing the laser diode 532 .
  • a decode/control means 556 operative for decoding the digitized video signal to a digitized decoded signal from which the desired data descriptive of the symbol is obtained in accordance with an algorithm contained in a software control program in the microprocessor 530 .
  • the decode-control means includes a PROM for holding the control program, and an RAM for temporary data storage the decode/control means 556 , together with the microprocessor, determine when a successful decoding of the symbol has been obtained, and also terminates the reading of the symbol upon determination of the successful decoding thereof. The initiation of the reading is caused by depression of the trigger 528 .
  • the decode/control means also includes control circuitry for controlling the actuation of the actuatable components in the head, namely, the laser diode 532 , the photodiode 550 , the motor 546 , and all the other electronic subcircuits therein, as initiated by the trigger, as well as for communicating with the user that the reading has been automatically terminated as, for example, by sending a control signal to an indicator lamp 558 to illuminate the same or by energizing a buzzer or beeper.
  • the decoded signal is either conducted along a conductor within a cable interconnected between the head and a remote host computer 560 , or is transmitted by radio wave from the head to the computer 560 by means of antenna 536 .
  • the computer 560 serves essentially as a large data base, may be an in-store processor, stores the decoded signal, and provides information related to the decoded signal. It includes a CPU 560 ′ and a memory 560 ′′.
  • the host computer in accordance with this invention, can provide retail price information on an updated basis corresponding to the products identified by their decoded symbols.
  • the host computer can advantageously be incorporated in a portable terminal, or in a stationary terminal such as a cash register.
  • the data base can be incorporated in a portable housing held in one's other hand, or supported on the operator's person, for example, suspended from a belt or shoulder strap, in a field-portable application.
  • a keyboard 562 ′ may advantageously be provided on the head for entering data relating to the symbol and/or the product bearing the same.
  • the keyboard includes a “done” key 562 ′′ by which the user tells the host computer 60 that there are no more items to be scanned.
  • a display 64 is also conveniently mounted adjacent the keyboard 562 ′ on the top wall 520 of the head, and is operative for displaying information relating to the symbol and/or the product bearing the same.
  • each product 1300 bearing a label imprinted with a symbol 1310 is identified by scanning the symbol with the hand-held scanner head 510 in the manner depicted in FIG. 24 .
  • the printing of the PDF code symbol 1320 is performed by a printer 562 that is either incorporated in the hand-held head 510 (see FIG. 21 ) or held in one's other hand, or worn on one's person (see FIG. 22 ), or mounted on a nearby support surface such as a countertop, or incorporated in another component such as a scale or cash register, as described below.
  • the printer includes a thermal printhead 561 operative for thermally imprinting graphical markings on a journaled roll 563 of paper labels, each printed label being torn off the roll by being urged against tear-off edge 565 at the front of the head 510 .
  • the label preferably has a pressure-adhesive backing so that it can be applied directly on the container 340 .
  • FIG. 25 illustrates an alternative printer/scanner arrangement which can be used with the present invention.
  • the assembly comprises a portable data terminal 1100 having a keyboard 1102 for data entry, and a screen 1104 . Attached to the portable data terminal are an integrated printer 1106 and a separate bar code reader 1108 .
  • FIG. 26 An alternative printer/scanner arrangement is shown in FIG. 26 .
  • this comprises a portable data terminal 1100 ′, having a keyboard 1102 ′ and a screen 1104 ′.
  • the terminal incorporates an integral scanner head 1110 .
  • Attached to the terminal is a separate printer 1112 .

Abstract

A method of integrating host application software with data collection devices (e.g., bar code scanners) located on remote, wireless terminals. A data collection object executes on the host computer, using a predetermined interface between the host application software and the data collection object. That interface, and the communications between the host application software and the data collection object, are configured so that to the host application software the data collection device appears to be local hardware on the host computer. The data collection object creates and executes threads of execution for controlling operation of the data collection device, with the threads communicating with the remote terminals via a host computer transport layer, the wireless link, and a remote computer transport layer at the remote terminals. A data collection device driver on the remote terminal receives communications from the data collection object, and returns information to the data collection object, over the remote computer transport layer, wireless link, and host computer transport layer.

Description

    CROSS REFERENCE TO RELATED APPLICATIONS
  • This application is a continuation of U.S. patent application Ser. No. 08/916,605, filed on Aug. 22, 1997 (hereby incorporated by reference), which is a continuation of U.S. patent application Ser. No. 08/691,263, filed on Aug. 2, 1996, now abandoned, which was copending with U.S. Provisional Application No. 60/006,872, filed on Nov. 17, 1995.
  • BACKGROUND OF THE INVENTION
  • The invention relates to integrating host application software with data collection devices (e.g., bar code scanners) located on remote, wireless terminals.
  • Various readers and optical scanning systems have been developed for reading printed indicia such as bar code symbols appearing on a label or the surface of an article and providing information concerning the article such as the price or nature of the article. The bar code symbol itself is a coded pattern of indicia comprised of, for example, a series of bars of various widths spaced apart from one another to form spaces of various widths, the bars and spaces having different light reflecting characteristics. The readers electro-optically transform the graphic indicia into electrical signals which are decoded into alpha-numeric characters that are intended to be descriptive of the article or a characteristic thereof. Such characters typically are represented in digital form, and utilized as an input to a data processing system for applications in point of sale processing, inventory control and the like.
  • Known scanning systems comprise a light source for generating a light beam incident on a bar code symbol and a light receiver for receiving the reflected light and decoding the information contained in the bar code symbol accordingly. The readers may comprise a flying spot scanning system wherein the light beam is scanned rapidly across a bar code symbol to be read or a fixed field of view reading system wherein the bar code symbol to be read is illuminated as a whole and a CCD (Charge Coupled Device) array is provided for detecting the light reflected from the bar code symbol.
  • Known hand-held optical readers are often in the shape of a gun having a handle portion and a barrel portion. The reading window through which the light beam passes is generally located at the end face of the barrel portion, and the reader is aimed at the indicia to be read by the operator holding the handle portion. A trigger is situated in the region of the junction between the handle portion and the barrel portion for operation by the user to actuate the optical reader.
  • In addition there are known portable hand-held computers for collecting data and down-loading the data to a central or peripheral device. The down-loaded data may be raw data or data that has been processed within the hand-held computer. Data collection can be carried out by entering information to the hand-held computer via a keypad, or by incorporating in the computer an optical reader for example for reading bar code symbols, or incorporating a reader for reading a magnetic card strip. For example when information about various products is required during inventorying, those products may bear bar code symbols or magnetic strips, or have associated magnetic strip cards which are read by the hand-held computer. The data collected can be transferred from the hand-held computer to a central or peripheral device by known means such as radio frequency radio links, wired connections, infra-red communications or other known transmission arrangements.
  • Often, more than one data capture system is required for a given application. The manufacture of a customized system for a specific application is expensive and difficult to modify if it is subsequently desired to incorporate further data capture options than those originally provided in the customized device.
  • Further limitations are imposed because of the limited storage capability of hand-held computers (often known as personal digital assistants) as a result of which simple-store-and-forward, multi-user electronic message systems are generally impractical.
  • It has been previously proposed to implement a bar code scanner resident on a control machine running a COMPONENT OBJECT MODEL (COM) object. It is desired to increase the scope of such applications to be compatible with a wide range of models and in particular to introduce a bar code scanner remote from the machine and controlled through a wireless interface.
  • SUMMARY OF THE INVENTION
  • In general, the invention features a new method of integrating host application software with data collection devices (e.g., bar code scanners) located on remote, wireless terminals. A data collection object executes on the host computer, using a predetermined interface between the host application software and the data collection object. That interface, and the communications between the host application software and the data collection object, are configured so that to the host application software the data collection device appears to be local hardware on the host computer. The data collection object creates and executes threads of execution for controlling operation of the data collection device, with the threads communicating with the remote terminals via a host computer transport layer, the wireless link, and a remote computer transport layer at the remote terminals. A data collection device driver on the remote terminal receives communications from the data collection object, and returns information to the data collection object, over the remote computer transport layer, wireless link, and host computer transport layer.
  • In preferred implementations of the invention, one or more of the following features may be included:
  • The data collection object may be implemented as a COM.
  • Communications between the remote terminal and the host computer may be over an Internet or Intranet network.
  • The data collection device may be a bar code scanner, and the data collection object may be a bar code scanning object.
  • There may be provided a portable computer device comprising a main body and at least one data collection/communications module connectable to the main body, the main body including an interface for connection with the module, a processor for processing information received from the module and a communication link for exchanging information with a host. Because of the modular arrangement the device may be easily adapted to different applications without the requirement to manufacture costly customized systems or to modify such systems which would prove expensive and complex.
  • The main body may include a visual display, for example an LCD display. The main body may also comprise a keypad. The modules may comprise an image capture module, a laser scanner module and/or a multi-media module. The modules preferably include digital signal processing sub-systems which may be of a single design and programmable as appropriate. The modules may comprise pre-processors for pre-processing information prior to transfer to the main body to reduce the burden on the processor in the main body. The module may be movably mounted on or relative to the main body, and in particular to the display on the main body—for example it may be hinged pivotally or rotatably mounted.
  • The device may be configured for connection with the Internet.
  • According to the invention there is provided a communication system for a bar code scanner comprising a control host, a scanning control object working therein and a remote client associated with the bar code scanner wherein the scanning control object communicates with the remote client to control the bar code scanner and the scanning control object is implemented as an OLE control. Accordingly there is provided a system capable of seamless communication between the scanning control and the remote client.
  • The host and the scanning object control may communicate and integrate via interfaces. The scanning control object may create separate threads of execution for controlling communication with the remote client.
  • The separate threads of execution may include send, receive and synchronize bar code scanner transaction commands.
  • The scanning control object may be arranged to communicate with the remote client over an Internet or Intranet link and/or by wireless communication.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • The foregoing objects and advantages of the present invention may be more readily understood by one skilled in the art with reference being had to the following detailed description of several preferred embodiments thereof, taken in conjunction with the accompanying drawings wherein like elements are designated by identical reference numerals throughout several views, and in which:
  • FIG. 1 is a perspective view of an optical reader according to the present invention from above and the rear;
  • FIG. 2 is a perspective view of the optical reader of FIG. 1 from above and the front;
  • FIG. 3 is a perspective view of the optical reader from the front and tilted upwardly;
  • FIG. 4 is a view of the optical reader from the front;
  • FIG. 5 is a view of the optical reader from below;
  • FIG. 6 is a view of the optical reader from above showing hidden detail;
  • FIG. 7 is a side view of the optical reader showing hidden detail;
  • FIG. 8 is a sectional view of the optical reader along the line A-A shown in FIG. 7;
  • FIG. 9 shows a portable computer device according to another aspect of the invention;
  • FIG. 10 is a block diagram of an image capture module for the device of FIG. 9;
  • FIG. 11 is a block diagram of a multi-media module for the device of FIG. 9;
  • FIG. 12 is a perspective view of a variation of the device of FIG. 9;
  • FIG. 13 is a block diagram showing the components of a distributed mail delivery service according to another aspect of the invention;
  • FIG. 14 is a flow chart showing operation of a client portion of the service of FIG. 13;
  • FIG. 15 is a flow chart showing operation of a server portion of the service of FIG. 13;
  • FIG. 16 illustrates a block diagram of a conventional wireless communication system with a terminal emulation program installed on the mobile units;
  • FIG. 17 illustrates a flow chart illustrating an access point's action upon receiving a packet from a mobile unit according to the prior art;
  • FIG. 18 is a block diagram of a general purpose interface reader application according to another aspect of the invention;
  • FIG. 19 shows the interface between a scanning control and a control container according to a further aspect of the invention;
  • FIG. 20 shows multiple threads of execution maintained by the control of FIG. 18;
  • FIG. 21 shows schematically the packaging of the products for shipment according to an embodiment of the present invention;
  • FIG. 22 is a flow diagram illustrating the operation of the software within the scanner;
  • FIG. 23 is a sectional view of a hand-held scanner together with a host computer;
  • FIG. 24 is a perspective view of the arrangement of FIG. 23 in use;
  • FIG. 25 shows a printer/scanner assembly suitable for use with the present invention; and
  • FIG. 26 shows a further printer/scanner assembly.
  • DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
  • Throughout the description of the optical reader the terms “front”, “rear”, “upper”, “above”, “lower” and “below” are used consistently. Referring, for example, to FIGS. 1 to 4 the optical reader has a rear end 4 and a generally planar front end 5, an upper face 2 a and opposed to that a lower face 2 b.
  • Referring to FIGS. 1 to 4 in more detail the optical reader includes a generally bar-shaped elongate housing indicated generally by the reference numeral 1, having two generally opposed long broad upper and lower faces 2 a, 2 b (see also FIG. 7), two generally opposed long, shallow side faces 3, a rear end 4 and a front end 5 (see also FIG. 6).
  • As can be seen from FIGS. 5 and 6, the upper and lower faces 2 a, 2 b of the reader comprise side edges having substantially straight front portions tapering inwardly towards the front edge which is of convex shape having a large radius of curvature. The rear portions of the side edges curve inwardly and meet so that the rear end 4 of the housing is generally elliptical in shape when viewed from above. The rear end is interrupted by a recessed connector 6 which is described in more detail below. The housing is configured to be held by a user with the rear end mounted in the palm of the user and it will be seen, therefore, that the curved end of the housing when viewed from above will facilitate holding by the user.
  • Referring to FIG. 7 the side faces 3 of the housing comprise substantially parallel downwardly curved long edges and a substantially straight front edge. A bulbous convex rear portion 7 extends from the rear end of the upper edge to approximately the centre of the lower edge. A concave groove 8 is provided in the frontward part of the bulbous portion 7 extending around both sides of the bulbous portion 7 to approximately the mid point of the bulbous portion 7 on either side. As a result the reader is yet more suitable to be gripped towards the rearward end by the operator, the bulbous portion 7 fitting into the palm of the operator and the concave groove providing improved grip and fit with the operator's hand.
  • A reading arrangement is mounted within the housing. The reading arrangement may be any known conventional arrangement, for example a “flying spot” optical scanner or a “field of view” optical reader. Generally the arrangement will include a light generating source such as a laser diode, a beam focusing or directing arrangement and a light receiving device. Where the reading arrangement is an optical scanner a rapidly oscillatable scan component, such as a mirror is provided to scan the light beam across an indicia to be read. Alternatively, the laser diode itself can be oscillated. Where the reader is a field of view optical reader a charge coupled device (CCD) array, or a photodetector arrangement is provided to detect the reflected light beam.
  • In order to actuate the reading arrangement a scan trigger 9 is provided on the upper surface 2 a of the housing 1. In the arrangement shown the trigger 9 comprises a cut-out strip extending transverse to the longitudinal axis of the housing 1 and across the whole of the upper face and part of each of the side faces 3 and is situated approximately half way along the upper face 2 a. The trigger 9 is activated by depression and is positioned along the housing 1 such that it is easily actuable by the operator when the reader is held in the operator's hand. The trigger mechanism itself may be of any known arrangement; for example the trigger may be spring-loaded and have contacts which form a circuit with contacts within the housing when the trigger is depressed to actuate the reading arrangement. Power may therefore be conserved as the reader will only be activated when the trigger is depressed enabling the operator to leave the reader idle when no indicia are to be read. Once again, as the trigger is positioned with ergonomic considerations in mind, the reader can be simply and quickly operated by the user with minimum discomfort.
  • A scanning window 10 is positioned on the front face 5 of the reader. Light generated by the reading arrangement passes through the window 10 and is reflected and scattered back through the window 10 by a bar code symbol 11. Accordingly the reader can be easily and accurately aimed at the bar code symbol 11 to be read (as shown illustratively in FIG. 2). As a result the bar code symbol 11 can be rapidly located by the user and read by the reader with a minimum amount of time wasted attempting to locate the bar code symbol 11. Accordingly both operator time and usage time can be reduced which is of particular relevance in battery-powered hand-held readers.
  • As shown in FIGS. 6, 7 and 8, the batteries 12 for the hand-held reader are stored in the bulbous portion 7 towards the rear and aligned with the longitudinal axis of the reader. The batteries 12 are disposed along a curved surface matching the curvature of the bulbous portion. As a result, maximum use is made of the ergonomically design bulbous portion 7 of the reader and minimum space is occupied by the batteries 12.
  • A strap 13 can be attached to the reader, for example towards the rear of the bulbous portion 7 for placing around the operator's wrist such that, in the event of the reader being inadvertently released from the grip of the user, it is still held to the user by the strap 13.
  • Also provided on the upper face of the reader are a keypad 14 and a display 15. (The keypad 14 is not shown in FIG. 6 for the purpose of clarity). The keypad 14 may be used to initialize the reading arrangement such that identification information concerning the user is entered into the system. Alternatively, the keypad 14 may be used to enter predetermined codes or information concerning modes of operation of the reader or to carry out cancellation or manipulation operations on information provided by the reader. The display 15 may display information relating to the mode of operation of the reader, or display check information relating to the item carrying the bar code symbol being read together with background information such as the time, date, and confirmation of the operator's identity. Preferably the display 15 is a liquid crystal display (LCD).
  • The reading arrangement can process information derived from the bar code symbols directly or can send raw data to an external processing device which can then process the information accordingly. In addition, information derived by the reader from bar code symbols can be transferred to a memory device in order that a database of information can be built up. For example where the reader is used at a point of sale, buying patterns can be stored and analyzed. Alternatively, if the reader is being used for inventorying purposes then the inventory information can be stored. The optical reader can transmit information in a variety of manners. In the embodiments shown various different transmitting devices are provided; in practice only one or more of the devices need be provided depending on the particular use to which the reader is to be put. For example the information may be transmitted by an acoustic modem 16. In that case, information can be stored in a buffer memory within the reader and then down-loaded by the acoustic modem 16 at predetermined intervals. The display 15 could indicate when information was to be down-loaded. Alteratively an interface connector, for example an RS41 connector is designated by reference numeral 6 and provided at the rear of the reader. Suitable cabling can be inserted into the connector 6 to down-load information or alternatively to load data into the reader for example relating to the mode of operation. Once again, the display 15 could provide an indication of the functioning of the connector. The cable could be permanently connected to the reader as the connector 6 is provided at the rear of the reader and hence would not be obscured by the user's hand. Alternatively, the connector 6 could be connected to a cable for loading or down-loading of information when required and, for example, when indicated by display 15. In addition, a radio 17 or other transmitting device can be provided within the housing 1 to allow real time data communication. An advantage of that arrangement is that the operator may use the reader in a “cordless” or “wireless” configuration allowing increased mobility. Once again the radio 17 could comprise a transmitter and a receiver in order that information can be sent to and from a remote processor. The radio link could be replaced by an infra-red communication link or other wireless link of known type. Because the reader is of ergonomic design, the transfer of information is easily carried out while the reader is actually in use, if required.
  • As a further option the reader may be configured for connection to a telecommunications network or computer network, for example the “Internet”.
  • One example of where the reader may be of particular use is in relation to the worldwide web. When it is desired to access a web site it is necessary to enter the address of the site, known as the universal resource locater (URL). Often those URL's are long and complex, and are time consuming to enter and check manually. Furthermore the URL can, despite many checks, still give rise to error. The problem is exacerbated in the case of computer illiterate users. The proposed manner of overcoming this problem is to encode the URL address in a bar code symbol and read the bar code symbol with the reader for automatic access to the corresponding web site, which will be quick and accurate, giving rise to far less margin for error. The reader may be used to interface with a terminal for entry of the URL address or could be used independently.
  • In order to improve the operator's grip on the reader, one or more finger grips may be provided at locations where, in use, the operator's fingers or other parts of the operator's hand would contact the reader. The finger grip would comprise a molded rubber portion having raised elements to achieve traction on the finger or palm. Such finger grips could be provided, for example, on the bulbous portion 7 (as shown schematically in FIG. 5 by reference numeral 18) or the concave groove 8 therein, on or in the vicinity of the trigger portion or in areas of the upper surface 2 a where the operator's thumb might rest.
  • Accordingly it will be seen that the hand-held optical reader described herein is ergonomically shaped for maximum user ease and comfort, allowing increased efficiency and user-friendliness. Features such as the trigger 9 and finger grips 18 are positioned for optimum user operability. It will be appreciated that such features may be presented symmetrically in order to allow the terminal to be used by either left or right-handed users, or alternatively the handset may be produced in both left and right-handed versions. The reading window 10 is positioned for improved accuracy and ease of use, and features such as the key pad 14 and display 15 are positioned for ease of access and reference by the user. The device may be either wireless or connected to a central processor by a cord leading from the connector 6 provided at a convenient position on the terminal. The device can be powered by batteries 12 located conveniently along the curve of the bulbous grip portion 7 or could in the alternative be powered by a removable, rechargeable battery pack or via a cord into the above-mentioned interconnector or another connector.
  • According to another aspect there is shown in FIG. 9 a data collection device comprising an improvement over known arrangements. The device comprises a portable hand-held computer for collecting data and down-loading the raw processed data to a central or peripheral device. The device, designated generally as 20 comprises a main body 21 and interchangeable data collection modules 22 a, 22 b, 22 c.
  • The main body 21 is provided internally with data processing means (not shown) and also comprises a display screen 23, for example an LCD display screen capable of displaying video images, a data collection module interface 24, an optional input information keypad 25 and a communication link 26 which may comprise radio frequency or infra-red transmitting means or an interface for down-loading information to a central or peripheral device via a physical cable. It will be appreciated that the LCD display 23 and input keypad 25 are optional features. Advantageously, however, they allow the user to configure operation of the device as a whole quickly and simply and monitor the operation. The main body is shown schematically in FIG. 9; in practice it could assume an ergonomic shape such as that shown in FIGS. 1 to 7, suitable interfaces etc. being positioned as appropriate, for example at respective ends of the module.
  • It will be appreciated that the device may transfer information to a host via any electronic data transfer scheme—for example the system could also use cellular-based telephone channels.
  • Alternatively the device could be configured for connection to a telecommunications network or computer network, for example the “Internet”.
  • The data collection modules are interchangeable with one another and may be, for example, CCD (Charge Coupled Device) based image, video and bar code symbol data capture modules, audio transducers for collecting and receiving sound information, laser image scanners or combined multi-media data collection modules.
  • An image capture module using a CCD could be used for capturing images of objects for storage or use by a processor application carried out by the main body or by a host, such images including for example people, landscapes, homes and vehicles for reference applications. In addition the imager could be used for one dimensional or two dimensional bar code symbols for decoding data capture. A laser optical reader scanning module and decoder would be used generally for bar code data capture and decoding only.
  • A multi-media module 22 is shown in FIG. 11 and discussed in more detail with reference to that figure below. Such a module could contain a circuitry for image/video capture, audio capture and playback and a cellular telephony sub-system. Such a module would be of particular use in teleconferencing and live video communications over cellular networks from the portable unit.
  • The desired data collection module 22 a,b,c is connected to the main body 21 by the interface 24 on the main body which mates with an interface 27 on the module. Any suitable known interface components can be used but the components should be strong, relatively inflexible, durable and suitable for frequent disconnection and reconnection.
  • The modules are powered by a power supply within the main body of the portable computing device and may be partially or totally controlled by software drivers within the main body. In order to reduce the burden on the central processing unit of the main body, dedicated signal processing electronics within the modules can be arranged to perform up-front data processing as a result of which a common bus architecture to the main body is shared by all of the modules. As a result their interchangeability is enhanced.
  • A suitable architecture for an optical media capture module 28 (for example containing a CCD imager or laser scanner) is shown in FIG. 10. Each module may contain only the media capture electronics without any pre-processing capability or, as discussed above, preferably contains dedicated or programmable analog components 32 and digital signal processing (DSP) components 33 to ease the processing load placed on the central processing unit of the main body 21. The digital signal processing sub-system 32, 33 in the module may be of a single electronic design common to different modules, and which is either programmed in the factory or customized on purchase or programmable by the user to perform the functions in processors if required by the particular media module. This function programmability is expected to be mainly through software, since the module processing electronics are flexible, and these software components may be one-time or dynamically loaded to the module via the main body central processing unit. Accordingly the range of components that require manufacture is decreased, appropriate dedicated parts of the components being selectable for a desired use, or a portion of the mode of operation being borne by software.
  • In operation, the module 28 collects information via the CCD imager or laser scanner in analog form which is transferred either serially or by conversion into a parallel format. The analog signal is then processed by the digital signal processing sub-system 32, 33 and forwarded to an interface bus 34 from which the information is transferred to the main body of the portable computing device. As mentioned above, the signal processing electronics preferably perform up-front data processing such that a common bus architecture to the portable computing device 21 can be achieved.
  • Referring now to FIG. 11 the multi-media module 22 includes circuitry for image/video capture, audio capture and playback and a cellular telephony sub-system.
  • The module is arranged to receive and transmit video information independently of the main body of the portable computing device (although the video information may also be accessed by the main body of the portable computing device in order to monitor or review the information). Accordingly a radio frequency antenna 41 is provided in the module for reception and transmission of radio frequency information. A radio frequency front end processor 42 and codec 43 cooperate to perform digital to radio frequency/radio frequency to digital format conversions. Video information received via radio frequency is decompressed by an optional digital signal processing sub-system 44 for presentation, where appropriate, to the CPU of the main body 21 of the portable computing device. A further digital signal processing sub-system 45 is provided for other purposes (discussed in more detail below) and preferably performs partial video processing, the CPU of the personal computing device completing the process for displaying the results. The second digital signal processing sub-system 44 may also be required for the interface to the radio frequency codec 43 of the cellular sub-system; this depends on the amount of processing required for each function. Video information transferred to the main body 21 of the portable computing device is displayed on the LCD display 23. The radio frequency receiving, transmitting and processing apparatus 41, 42, 43, 44 discussed above can optionally reside in a separate component such as a PCMCIA or other type plug-in card for example of the type manufactured by Symbol Technologies, Inc. Preferably, however, the circuit forms an integral part of the multi-media module to provide a full wireless multi-media solution for the hand-held computing system. As will be appreciated, the wireless link may conform to any desired cellular standard (for example CDMA, GSM, AMPS) that is preferably selected to allow the widest application of the invention.
  • The multi-media module 22 further includes a microphone/speaker component 50 which receives and transfers input analog information to an analog to digital converter 51, 45 comprising an up-front voice-band converter 51 which transfers information either serially or in parallel to the digital signal processing sub-system 45. Similarly, information may be transmitted in the other direction, for example digital information from the main body of the portable computer device is converted to an analog audio signal at converter 45, 51 and converted to sound by the speaker component 50. Base-band digital audio data is processed by the digital signal processing sub-system 45 which can be reprogrammed as appropriate to perform appropriate audio codec processing. Voice-band (VB) signals are converted by the converter 45, 51 as discussed above.
  • Video data is captured by a CCD imager 52 compressed by a digital signal processing sub-system 53 and forwarded to the radio frequency codec 43. Once again the main body of the portable computing device need not be involved in this data transfer unless the user decides to monitor the transfer. In that case, a software controlled process may be initiated whereby the video data is sent to the CPU of the main body 21 of the portable computing device for display before compression as well as to the radio frequency codec 43 for transmission allowing the captured image to be viewed while or before transmitting.
  • The multi-media module 22 is preferably mounted so as to be rotatable through at least 180° when connected with the main body of the portable computing device. This may be achieved by hinging or pivoting or otherwise arranging a portion of the main body or by similarly arranging a portion of the module. This positioning allows capture of the user's image while the user can simultaneously view the LCD screen display for received video data or images. The rotation of the image capture portion of the module permits capture of images of objects in front of the user while the user is looking at the screen.
  • The microphone and speaker combination may be arranged to face the user in a preferred, standard configuration of the device as a whole. The microphone may further be configured to swing or swivel away from the main body of the portable computer device and from the user holding the device if the desired audio data to be captured emanates from another direction.
  • An appropriate arrangement including a pivotable module head 22 and a swingable microphone boom 30 is shown in FIG. 12. In the embodiment shown an upper portion 21 a of the main body 21 is hinged to the remainder of the main body and rotatable around an axis A as shown by arrow A′. The multi-media module 22 is connected to the upper portion and the upper portion has been swivelled such that a CCD image capture device 29 faces the user. The pivotable microphone boom 30 also extends from the multi-media module 22. It will be appreciated that a number of pivoting orientating arrangements can be provided, for example a hinge or pivot could be provided within the structure of the module 22, and the module could also be arranged to rotate through 180° about an axis transverse to axis A. Similarly, the microphone boom 30 can be pivotally mounted to the module 22 in any known manner.
  • Accordingly it will be seen that the invention can be used to provide modular programmable multi-media facilities in the hand-held form factor by portable computing devices such as hand-held terminals or “portable digital assistants”. The invention can be used for CCD based bar code decoding (in one or two dimensions at least) by industrial and commercial users, for example for point of sale processing or inventorying; portable, cellular video conferences by travelling business users; and digital photography/image capture for insurance assessors, sales professionals among many other applications that will be apparent to those skilled in the art. It will be appreciated that the portable modules discussed above may be used in cordless scanning implementations for example in point of sale applications. Problems arise where such portable devices are not tethered in some manner as it is possible that they will be lost, removed from the store, or otherwise misappropriated.
  • To overcome this, it is possible to put surveillance tags of a known type into the scanner such that if the scanner is accidently taken by a customer an alarm will sound at the front-of the store as it would if any other product carrying such a surveillance tag was carried out of the store.
  • Alternatively the scanner can have some form of internal alarm which sounds if the scanner is taken more than a predetermined distance from the base. Where the scanner communicates with the base by wireless communications such as radio communication, the software protocol managing the radio session could control the range finder and alarm.
  • In order to locate portable scanners that have been misplaced an alarm or “beeper” can be placed in the scanner and triggered by a signal from the base controlled by, for example, a button on the base pressed by the user. Accordingly when the user pressed a button the scanner could be located by following the noise of the sound.
  • A further use for portable computer devices is the electronic mail box or mail delivery service application. Referring to FIGS. 13 to 15 the invention provides an improved architecture for electronic mail box systems including portable computer devices. The improved system uses a distributed message delivery service architecture, based on cooperating processes. Within a network a particular machine is designated as a server and its address becomes public on the local network. The server is responsible for delivery of mail and reception of mail and also provides other machines on the local network with information regarding user message status, for example whether a message has been received for an identified user, in which case the message can be forwarded to the user. The remaining machines on the network are designated the client and carry out a corresponding process, in particular providing a user interface to the distributed mail delivery service. For example the client portion can present various options to the user for example the options of hearing audio messages or viewing text or still images. The options presented will, of course, be based on the resources available to a particular machine, for example whether it has a sound card and/or graphics capabilities.
  • Referring specifically to FIG. 13 there is provided a server 100 and a plurality (shown as 2 in the figure) of clients 101 a, 101 b. The server 100 includes an antenna 102 for communicating with remote clients 101 a, 101 b (for example portable computer devices), a transmission and reception module 103, a message coder and decoder 104 (protocol stack) and a processing module 105 (query engine) for handling queries from clients 101, for example regarding a particular user message status, accessing any such messages etc. information is accessed from a memory 106 which may be a data base storage module. The processor 105 also communicates with a mail user agent (MUA) module 107 allowing user interface with the server 100. The server 100 is further in communication via the mail user agent 107 with a local and/or wide area network designated generally as 108.
  • The service may form part of, or be configured for connection with a telecommunications network or a computer network, for example the “Internet”.
  • Each client 101 a, 101 b includes various modules common with the server together with further modules specific to the needs of the client. The client 101 includes an antenna 109 for communication with the server and a transmitting/receiving module 110 communicating with a message coder and decoder 111. The module 110 will include the hardware necessary for carrying out the transmitting/receiving steps but it will be recognized that at least some of the functions provided by the module will be capable of being provided in software. Indeed, generally, reference to modules need not be to dedicated hardware but extends to programmed or programmable software arranged to emulate hardware performance. The message coder and decoder 111 interacts with the mail user agent 112 providing user interface. In addition the mail user agent 112 communicates with a local data storage device 113 and with optional modules such as a display driver 114 and/or a sound driver 115 (see client 101 a).
  • Operation of the distributed mail delivery system may best be understood with reference to FIGS. 14 and 15. FIG. 14 displays the steps carried out by the user in a typical “client process”. On commencement of operation the client auto-configures itself based on the resources (for example sound or graphics) available on the machine [step 120]. The user logs in and enters a password [121] and a connection is established between the client and the server [122] at which stage information entered during the log-in and password process is sent to the server for verification [123]. If, however, the server is not ready for communication then the procedure is exited [124] and must be recommenced at step 120 or step 121. After the user status is queried [123], if the user or password is unknown to the server the process returns to step [121] and the log-in and password procedure is re-initiated. Otherwise the options available to the user are retrieved [125] in steps discussed in more detail with reference to FIG. 15 and displayed as headers to the user [126]. The user then enters his selection [127] and the selection type is determined [128].
  • The client assesses whether the user wishes to view a message [129] and if so retrieves the selected message from the server [130] in a series of steps described in more detail below with reference to FIG. 15. The client then determines the message type, for example audio or visual [131] and dependent on the message type either displays the text [132] or plays the sound [133]. The client then returns to step [127] and awaits a further user selection.
  • If at step [129] the user indicates that it is not desired to view a message then a message is created [134], recorded [135], the data of the message is packaged appropriately for transport [136], for example by the protocol stack 111 shown in FIG. 13, and is sent to the server [137] by the transmitter 110 and antenna 109. The client then returns to step [127] and awaits a further user selection.
  • The client machine includes suitable input means, for example a keypad and display means for example an LCD display for the entry of user selection choices, message information and for the display of messages. In addition a speaker and microphone may be provided for the recordal and playback of audio messages. A portable computer device such as that shown in FIG. 9 may, for example, be used as the client 101. In that case, auto-configuration of the client is carried out partially in dependence on the type of module 22 inserted into the main body 21 of the portable computer device 20.
  • Referring now to FIG. 15 the steps of a typical “server process” are shown. The server operates as a continuous process but, in order to save system resources, is mostly in a stand-by mode where it simply listens to the local network. Accordingly in step [140], on initiation, an open end connection is established and the server monitors the connection [141]. If any queries are received [142] the server proceeds to the subsequent steps but otherwise continues to monitor the connection [141]. On reception of a query the server “wakes-up”, interprets the query to establish which of the internal modules of the server is designated [143] (for example data base storage 106 or mail user agent 107) and if the request is valid [144] the request type is determined [145]. The request may be a HEADER which is sent to the client to present user message headers (corresponding to steps [125] and [126] shown in FIG. 14); accordingly at the request for a header [146] appropriate information is retrieved [147], is packaged for transport [148] for example at modules 104, 103 of the server and is sent to the client [149]. The server then returns to monitoring mode [141] listening to the connection with the remainder of the network.
  • If at step [146] the request is not for HEADER information then the server retrieves any user messages [147] that are stored in respect of the identified user (for example on the basis of the log-in or password information entered at the client) and the data is packaged and sent as described above in relation to steps [148, 149]. The system then returns to monitoring mode [141].
  • It will be seen that steps [142-147] are carried out by the query engine 105 of the server, user message data being retrieved from the memory device 106 of the server.
  • Where, at step [144] the request is not valid then the user and request are logged and an error message is sent back to the client [151]. The system then returns to monitoring mode [141].
  • The system described above requires far less data storage on the client terminal/computer and thus is particularly (although not exclusively) suitable for hand-held computers with basic network capabilities. The system thus resolves the problem of mail box locations as well as releasing the hand-held host and the data storage and retrieval responsibility by treating the mail delivery service as two cooperative and independent processors that communicate with each other using basic network protocols.
  • In effect, unlike conventional mail delivery service systems, the distributed mail delivery service uses the underlying network to actively present enquiries to the server regarding the message status relating to a particular user, rather than using a directory structure and relying on a file system. Because all enquiries are directed to one server, multiple connections for a single user can be identified and refused, the server is the only point of connection to external entities, offering a more secure delivery system and the server offers a view of the mail delivery service to the end user which is independent of the actual matter stored by the server.
  • In addition clients are relieved of the responsibility of storing or directly retrieving any of the actual data. Messages are delivered via the network on a demand basis, that is when required by the user, and the client portion of the distributed mail delivery service simply translates user requests into a series of commands which are forwarded to the server in the form of queries. If the queries are validated the server returns the necessary data to a client in response to the queries. By virtue of the separation of tasks the system designer gains the freedom to modify components of the system independently. For example it may be initially decided that the server should store messages using a simple mail box scheme, but if the capacity or speed or efficiency of the system subsequently needs to be enhanced as a result of the increased burden placed on it by an increasing number of users and messages, the server can revert to using a complete database management system. Any such modifications will, however, remain hidden from the client portion and the client portion can effectively remain unaware of the underlying structures of the server indefinitely.
  • Similarly, the client portion may be modified for example to move from a character-based user interface to a graphical-type interface in which case the server may remain unaware of the modifications as the basic data query and exchange mechanism is unchanged, the server remaining unconcerned about the manner of data presentation at the client portion.
  • Accordingly a voice mail delivery system is implemented. The client portion may run on a PC compatible platform although it could be ported very simply to other platforms. The server can operate on UNIX or DOS platforms. The client requires less than 256 kbytes of local storage.
  • It will be seen, therefore, that the proposed delivery system offers multiple advantages over current mail box schemes, providing flexible and independent modules which are simpler to maintain and modify and which offers a generic mechanism by which data transfers can be implemented over data networks. As it is a distributed system it does not require the presence of a network file system and simply relies on local storage.
  • In particular, because a server is provided on each local network for dealing with the clients within a local network and also for communicating with other servers on other local networks the roaming capabilities of the system are enhanced. The distribution of mail processing between the various local networks is in contrast to the centralized hub system in conventional mail delivery systems and allows simplified and accelerated mail processing and transfer in combination with a roaming portable computer.
  • Further aspects of the present invention will be discussed in conjunction with Symbol Technologies Inc. spread spectrum wireless networks: Spectrum One (operating at a frequency range of 902 to 928 MHz) and Spectrum24 (operating at a frequency range of 2.4 to 2.5 GHz). However, the embodiments discussed are applicable to other wireless communications systems.
  • Part 1: “Symbol” Terminal Emulator Program (STEP) and Pen-Based mobile Units/Terminals.
  • Symbol (a Trade Mark) terminal emulator program (STEP) is a tool used to format applications for pen-based mobile units such as the mobile unit 21 shown in FIG. 9.
  • An example of the Spectrum24 system is shown in FIG. 16. The STEP resides in the mobile units 21 and works with an enabler development system 160 on a host computer 162 to execute a predefined set of commands sent from the host computer 162. The enabler development system 160 includes an enabler server 164, an enabler application program interface 166 and a timer 168. The enabler development system 160 receives input from the Spectrum24 access point unit 170. The host computer 162 is controlled by a terminal 172 to run host applications 174.
  • The STEP provides the mobile units 21 with the interface and logic functions necessary to communicate over the radio network, and controls all input, output and display functions at the mobile unit level, including keyboards, displays, scanners and peripherals, and printer support.
  • The STEP provides commands that allow the administrator to create a selection of data entry fields for the mobile unit operator. For example, these commands would permit the operator to: (a) enter data from a keyboard and scan bar codes; (b) send multiple messages to the host in the same transaction; and (c) control the type of data entered and validate entered data. Further, ,for display purposes STEP allows the administrator to (a) display data at any location on the mobile unit screen; (b) clear the entire mobile unit screen or clear a single line; (c) save and restore the mobile unit screen; and (d) control the backlighting feature to view the screen in the dark.
  • The STEP acts as a power manager to reduce demands on the batteries in the mobile units 21, enabling them to operate longer between charges and extending their overall life.
  • By installing STEP on the mobile units 21, forms can be created and displayed on the display screen 23 (shown in FIG. 9). Forms can include messages, prompts and data entry fields. This permits an operator to recall a stored form for execution on the mobile unit 21; repeat the execution of a stored form for on-line batch processing; and erase all stored forms and determine the date and time of the last form definition.
  • The STEP enabled mobile units 21 allow the host computer 162 to read data files stored in the unit 21; sound the mobile unit's 21 alarm; interrupt mobile unit 21 input activity; and log off the mobile unit 21 from the host computer 162. This allows the operator to use the mobile unit 21 to collect data without being logged on to the host computer 162; set and save system parameters; download files from the host computer 162 to the memory in the mobile unit 21; and perform other maintenance tasks.
  • FIG. 17 illustrates a typical conventional flow chart of the actions taken by the access point 170 when it receives a packet of data from he mobile unit 21 on the wireless network. If the packet is a registration packet, determined at step 200, then the access point 170 processes the information carried by the packet at step 214. The type of association is determined by examining the IP address of the mobile unit's 21 home access point and does the control message exchanges accordingly at steps 216 and 226. If the packet is not a registration packet, as determined by step 200, then the packet is decapsulated at step 202.
  • If the short term address mapping tables (ST-AMT) of the access point 170 has an entry for the packet's source MAC address, determined at step 204, then the packet has originated from the mobile unit 21 that is away from its home stationary data link (SDL) network and processing passes to step 218. At step 218 the access point 170 encapsulates the packet within a UDP packet with the IP destination address set to that of the mobile unit's 21 home access point.
  • If the long term address mapping tables (LT-AMT) of the access point 170 has an entry for the packet's destination MAC address, determined at step 206 then the packet is meant for a mobile unit that is currently outside its home access point group (APG) and processing proceeds to step 220. At step 220 the access point 170 encapsulates the packet within an UDP packet with the IP destination address set to the destination mobile unit's local access point.
  • If the packet's destination MAC address is a broadcast address, determined at step 208, then the packet if forwarded at step 222 on its wired and wireless interfaces. If the destination MAC address in the packet appears in the access point's mobile host table (MHT), determined at step 210, then the packet is encapsulated within a wireless link layer packet and forwarded on the wireless interface at step 224. Otherwise, the packet is forwarded on its wired interface at step 212.
  • Part 2: Assigning Domains and IP Addresses to Said Pen-Based Mobile Units 21.
  • The following embodiments of the present invention deal with assigning domains and IP addresses to the mobile units 21 to operate in a wireless LAN technology, such as the previously discussed Spectrum One and Spectrum24 systems.
  • According to an embodiment of the present invention the domains and IP addresses are hard coded. The hard coded embodiment involves setting the domain and IP address of the mobile unit 21 in the configuration files associated with the Spectrum24 drivers and protocol stacks.
  • The hard coded embodiment provides a relatively simple implementation of domain and IP address assignment for Spectrum24 network installations when only a few mobile units 21 are used that always use the same APG on the same network. In addition, a high degree of security is provided since the ability to detect and assign domain and IP addresses are available only in the configuration area, not in the operational area.
  • The hard coded configuration of each mobile unit 21 ensures that the domain and IP address information are non-volatile. This insures that even cold booting the mobile unit 21 will not require reconfiguration. All the access points 170 in the target APG can be configured to use the hard coded domain. The server can be set up to reserve permanently (without any timeout) the hard coded IP addresses for use by each hard coded mobile unit 21.
  • Another embodiment of the present invention involves the application-selection of domains and IP addresses. This embodiment is suitable for situations where a system administrator manually configures the mobile units 21 before their use by operators by setting the domain and IP address. In particular, when mobile units 21 are the only nodes on the network or when the system administrator set domains and IP addresses by referring to a master list maintained on a network server the application-selection system is advantageous.
  • For situations where the operator must identify the selections as he moves between APGs or networks a more sophisticated application is provided to allow the system administrator to establish logical names for domains and IP addresses so that operators can pick the appropriate settings by choosing a meaningful name such as truck, warehouse, depot, etc.
  • The application-selection method allows for the dynamic adjustment of domain and IP addresses under application control across APGs and networks.
  • A further embodiment of the present invention involves the access points-assignment of domains and server-assignment of IP addresses. This method is suitable when the manual assignment of domains and IP addresses is impractical due to many mobile units 21 or due to the complexity of the network.
  • AP-assignment of domains requires configuring access points 170 to allow for an automatic configuration. Using the access point 170 access control list (ACL) features, security can be enhanced by giving the access points 170 a list of the MAC-layer addresses of all the mobile units 21 allowed. This list can be larger than the number of mobile units 21 actually being serviced at any given time, allowing the timesharing of the capacity of the access point 170 among a large set of intermittent use mobile units 21.
  • Server-assignment of IP addresses requires the existence of a mechanism within the protocol stack, supported by services and utilities in both the server and the mobile unit 21, to allow dynamic allocation of IP addresses. BOOTP and DHCP are two common mechanisms for dynamic allocation.
  • BOOTP works by having a file on the server for each possible mobile unit 21, selected by the mobile unit's 21 unique MAC-layer address, that provides the IP address to be used for that mobile unit 21.
  • DHCP works by having a database on the server that records the IP addresses that are in use (by MAC-layer address) and the IP addresses that are available for dynamic assignment. When a mobile unit 21 requests an IP address, the database is searched for the MAC-layer address. If an IP address is already allocated to this mobile unit 21, the it is simply returned. If no IP address is allocated to the mobile unit 21, and one is available for dynamic assignment, it is allocated to the mobile unit 21, recorded in the database and assigned to the mobile unit's MAC-layer address, and returned to the mobile unit 21. The DHCP server can set to timeout when a dynamically assigned IP address has not been used for some time and return it to the available list or to keep IP addresses permanently assigned once allocated to a mobile unit 21.
  • The domains and IP addresses can be stored in volatile storage, but would need to be reentered following a reboot. However, the necessary address information can be stored onboard the flash of the mobile unit 21, or on the Spectrum24 adapter card, or on RAM disks or PCMCIA storage cards.
  • The AP/server-assignment methods provide the ability to program ACL information via a personal computer attached to the same hardwired router as the access point 170. Further, the AP/server-assignment methods allow for automatic assignment of complying domain and IP addresses as needed, and allow mobility across APGs and networks.
  • According to another aspect the invention addresses the problem of the necessity of a specialized program for parsing and interpreting high density data records embedded in bar code labels. In accordance with the invention it is proposed to distribute not only the bar code data on a high density label, but also information describing how to create an interface capable of reading the data from the data record label.
  • Implementation of the invention will be familiar to the skilled man in the operation of the Internet Web Browser suitable for reading, for example, Hyper-Text-Markup-Language (HTML) files. Those files are used to describe an interface to be built by Web Browser. In the present invention the mobile unit includes a reader or Browser for scanning a high density bar code label that contains a program script such as HTML, VB script or a specialized compressed version of either. The script is parsed and interpreted by Browser which constructs a user interface at run time and presents it to the user. The user interacts with the interface by scanning data labels and interacting with any of the program's controls presented to the user to properly process the data. According to one aspect a new data or interface level may be printed by the user that can be applied to the object being processed. It will be appreciated that, as bar code label densities increase, the capability of storing the actual interface and the data record in a single bar code label will appear.
  • FIG. 18 shows the system of the invention in more detail. The system includes a Browser 300 to which bar code information 301 is input. An interface 302 is constructed at run time and an interface control 303 is provided. The Browser 300 further includes a bar code acquisition engine 304, a parsing engine 305, a printing engine 306 with a printed data interface 307 and a communications engine 308 with a communications input/output interface 309. The user interacts with the interface via a further interface 310.
  • It will be appreciated that the manner in which the information is encoded in the bar code label will be familiar to the skilled man, and that the software and hardware required will also be familiar to the skilled man.
  • This system is particularly advantageous with respect to transportation and identification of goods. The shipper of the goods can distribute a program script label with the goods that is read by the receiver's Browser. The program script label shipped with the goods contains the information required to allow the Browser to create an interface at run-time to read and process the data for the container of goods shipped.
  • Logistical systems benefit greatly from a system such as this, because unidentified materials in the field can quickly be identified and processed by any unit containing the Browser.
  • The administration of the hardware and software contained in these systems is greatly reduced, because the Browser contained in the Mobile Unit (MU) stays static. Only when new Browser features need to be distributed do the MUs need to be updated. All interfaces are distributed on high density barcode labels. This system of application program distribution truly makes the computer system general purpose. An infinite number of different interfaces can be read in and executed by the Browser. No longer are users limited by secondary storage on their MUs for storing application programs.
  • Using this new system, any computer system equipped with a general purpose interface reader application (Browser) can create an interface “on-the-fly” that is capable of reading processing information on the accompanying data record labels.
  • Systems deployed in the field no longer need their application programs updated when changes to the program file is required. Only the program script label need be replaced. The number of different data formats that can be processed by a particular computer system is limited only to the number of program script labels available to the user.
  • Different users of such a system can freely exchange information because the interface information needed to process the data files is distributed on a label along with the data files themselves. Each user no longer needs a copy of the specialized application program that was previously required to read the data label.
  • According to another aspect of the invention there is provided a bar code scanning OLE (Object Linking and Embedding) COM (Component Object Model) object for communicating commands and bar code data over a wireless link. As discussed in more detail below the object uses OLE automation to be a “plug-in” development OLE control extension. It thus becomes an in-process OLE automation object. The in-process OLE automation object controls a bar code scanning device over a wireless link on a remote client. The remote device enables a bar code reader and collects the bar code information, returning the data over the wireless link to the OLE automation object.
  • The general principles of OLE architecture will be well known to the skilled man. In the present embodiment, a scanning object is implemented as an OLE control. OLE controls are re-useable software components designed to work in containers that support OLE 2.0. OLE controls are more powerful and more flexible than previous systems such as VBX Custom Controls in particular as, unlike the VBX Custom Controls that they are replacing OLE controls support 32 bit environments and are not limited to Microsoft Visual Basic (Trade Marks).
  • OLE controls are designed to work in any container that supports OLE 2.0 including not only Visual Basic 4.0 and beyond but also OLE-enabled container applications such as Microsoft Office (Trade Mark). Additionally OLE controls work in third-party OLE-enabled applications in development tools.
  • OLE architecture enables different software objects to communicate to each other using a binary interface mechanism. This allows software objects to be developed separate from each other and bind very late at run time. The software interface is a contract between the container and the control on how the two software objects will interact and exchange information.
  • Under the OLE architecture, the scanning object can be placed and activated in any of a variety of containers that support the OLE container interface. FIG. 19 shows the general mechanism between a control 401 and its container 402. As can be seen the mechanism includes standard compound document interfaces 403 and additional control interfaces 404, each comprising multiple interfaces.
  • In such a system the scanning control appears to become a seamless part of the container's environment. Through the exposed interfaces the two objects communicate and integrate with each other.
  • In addition, as shown in FIG. 20, the scanning control 401 communicates over a wireless link 410 with a remote computing client 411 to control the bar code reading device 412. The scanning control 401 sends commands over the wireless link 410 by creating separate threads of execution 413 a to 413 d that send, receive and synchronize bar code reader transactions over the wireless link. As shown in FIG. 20, the OLE container 402 and control 401 communicate via lines 414 a to 414 f. The OLE control includes a main control thread 415 which communicates with the OLE container 401 via lines 414 a, 414 b and with a first transaction thread A 413 a via a line 416. Each of the transaction threads 413 a to 413 d communicate along a respective line 414 c to 414 f with the OLE container 402. Each of the threads also outputs through a respective first line 417 a to 417 d to a transaction start dispatch function 418 and receives an input via a respective second line 419 a to 419 d from a transaction complete dispatch function 420. The transaction start dispatch function 418 communicates with a transport layer 421 in the remote client 411 via a line 422 and a transaction complete dispatch function 420 receives input from the transport layer 421 via a line 423. The remote client 411 includes a corresponding transport layer 424 which outputs via a line 425 to a data arrival handler 426 and receives an input via line 427 from a command complete handler 428. The data arrival handler 426 outputs via line 429 to a bar code device driver 430 and the command complete handler receives an input 431 from the bar code device driver 430. The bar code device driver 430 communicates with the scanning hardware such as a bar code reader 412 via a line 432.
  • As a result users can develop applications using OLE-enabled development tools like Visual Basic 4.0. The user simply inserts a new scanning object into their project, sets required properties, writes necessary code for event notification and the scanning control seamlessly talks to the remote client bar code scanning device over the wireless link. To the application program it appears as if the scanning device is resident on its local hardware. The invention comprises a significant development over previous architectures comprising implementation of a local bar code scanner resident on a machine running a COM object. In particular the architecture of the invention allows control of the scanner through the wireless interface.
  • By virtue of the present invention there is in addition the capability of supporting future versions to be distributed via the distributed component object model architecture (DCOM). The interfaces between the control container and the control itself are binary and can be implemented by the operating system as Remote Procedure Calls (RPC's). Accordingly the OLE control can be implemented as an Active-X control to control devices over an Internet or Intranet link. This technology allows Web authors and developers to create a new generation of interactive Web pager and applications, for example Microsoft Internet Explorer 3.0 (Trade Mark). This implementation is of particular benefit in proposed systems whereby users will wish to integrate bar code scanning capabilities into their Intranet/Internet-enabled applications.
  • The Intranet arises from the application of Internet technology to provide industrial strength mission critical applications to users within an organisation on an isolated LAN (Local Area Network) rather than for external connection to the global internet. Single function handheld computing terminals can then be built that connects to the LAN and execute predetermined applications to reduce significantly the cost per client when installing a network system. In an Intranet system, mission critical applications reside on the server, eliminating the cost of application deployment and lowering the cost of terminal configuration. The data collected is transmitted and saved on the server so little or no local data storage is needed on the handheld terminal. It will be seen, therefore, that such a system provides an ideal forum for the OLE scanning control object discussed above.
  • Referring first to FIG. 21, there is shown a collection of items 1300 which need to be returned to the vendor for a variety of reasons, for example incorrect shipment (wrong color, size, item number) damage in transit, to be returned for credit etc. Each item 1300 carries a bar code symbol 1310. The individual items 1300 are to be placed in a container or returns box 1340 in which they will be shipped back to the supplier or vendor.
  • To prepare the package for consignment back to the supplier, the retailer may make use of a bar code scanner having an attached host computer and printer as shown in FIGS. 23 and 24. Alternatively, he may use one of the alternative work station arrangements shown in FIGS. 25 to 26. All of these will be described in more detail below, but for the moment it suffices to note that each bar code scanner incorporates a printer 562, a keyboard S62′, 1116 for entering textual information, and a host computer 560 which incorporates a computer memory for storing details of the indicia that have been scanned, and the information entered via the keyboard. The host computer also incorporates a CPU having appropriate software.
  • Details of the method used to prepare the package of products for consignment may be seen from the flow chart of FIG. 22. Starting at step 1350, the retailer first (at step 1360) uses the bar code reader to scan and read the bar code 1310 on the product 1300. He then, at step 1370, enters on the keyboard 562′, 1116 the reason for the return, or alternatively as required by the supplier a returns number. At step 1380, the bar code details and the reasons are automatically added to a database maintained within the memory of the host computer 560. It will of course be appreciated that in an alternative embodiment (not shown) the user could be required to enter the details on the keyboard before, rather than after, scanning the bar code symbol. In either case, once the item 1300 has been scanned it is then placed into the large container 1340..
  • The process continues at step 1390, with steps 1360 to 1380 being repeated if further items are to be shipped. Once the retailer has finished, he presses a “done” key on the keyboard, at step 1400, to advise the host computer that there are no additional items to be added. At step 1410 the host computer 560 then encodes the database entries for PDF printing, and at step 1420 prints out a PDF bar code label. The PDF label, 1320, contains a listing of all the items in the container 1340 and the reasons for their return. The label is preferably self-adhesive, and the vendor merely secures it to the outside of the container before shipping. Alternatively, the printer 562 could print the PDF bar code directly onto the surface of the container 1340. A further label 1330, showing the address of the consignment, may be printed out automatically. The vendor also secures that to the outside of the container. The container can then be shipped.
  • On receipt of the container, the supplier simply reads the PDF label 1320 to determine which items are in the box, and the reasons for their return. Where the bar code incorporates return codes, the supplier can simply and easily determine whether the retailer has authorization to return those particular products. The label may, in addition, contain encoded information identifying the particular retailer in question.
  • The bar code symbol 1320 is desirably a PDF symbol, which is automatically produced by the software contained within the host computer 560. Details of the encoding method used by the software, which would enable a skilled man to devise appropriate software, are described in the above-referenced U.S. patent in common ownership with the present application.
  • Now that the conceptual aspects of the invention should be clear, reference may be made to FIGS. 23 to 26 which illustrate various exemplary embodiments of the scanner/printer assembly.
  • Referring first to FIG. 23 of the drawings, reference numeral 510 generally identifies a lightweight (less than 1 lb), narrow-bodied, streamlined, hand-held, fully-portable, easy-to-manipulate, non-arm and wrist-fatiguing, scanning head supportable entirely by an operator for use in a scanning system operative for reading, scanning and/or analyzing symbols and aimable, both prior to and during reading thereof, by the operator at the symbol, each symbol in its turn. The term “symbol” as used herein is intended to cover indicia composed of parts having different light-reflective properties. The indicia may be industrial symbols, e.g. Code 30, Codebar, Interleaved 2 of 5, etc., or the omnipresent Universal Product Code (UPC) bar code symbol. The indicia may also be composed of alphabetic and/or numeric characters.
  • The head 510 includes a generally gun-shaped housing having a handle portion 512 of generally rectangular cross-section, and a generally horizontally-elongated, narrow-bodies barrel or body portion 514. The dimensions and overall size of the handle portion 512 are such that the head 510 can conveniently fit and be held in the operator's hand. The body and handle portions are constituted of a lightweight resilient, shock-resistant, self-supporting material such as a synthetic plastic material. The plastic housing is preferably injection-molded and forms a thin, hollow shell whose interior space measures less than a volume on the order of 50 cu.in.
  • As considered in an intended position of use, as shown in FIG. 24 the body portion 514 has a front wall 516, a rear wall 518 spaced rearwardly of the front wall, a top wall 520, a bottom wall 522 below the top wall, and a pair of opposed side walls 524, 526 that lie in mutual parallelism between the top and bottom walls.
  • A manually-actuable, and preferably depressible, trigger 528 is mounted for pivoting movement about a pivot axis on the head in a forwardly-facing region where the handle and body portions meet and where the operator's forefinger normally lies when the operator grips the handle portion in the intended position of use.
  • A plurality of components are mounted in the head and, as explained below, at least some of them are actuated by the trigger 528, either directly or indirectly, by means of a control microprocessor 530. One of the head components is an actuable light source e.g. a semiconductor laser diode 532 or a light emitting diode, operative, when actuated by the trigger 528, for propagating and generating an incident light beam. In the case of a laser, the light beam is highly divergent, is non-radially symmetrical, is generally oval in cross-section, and has a wavelength above 7000 Angstrom units. The laser diode 532 requires a low voltage, e.g. 12 volts DC or less, supplied by a battery 534 which may be provided within the handle portion 512 or by a rechargeable battery pack accessory detachably mounted on the head, or by a power conductor in a cable connected to the head from an external power supply.
  • An optical assembly, including a half-silvered mirror 537 and an optical train 538, is mounted in the head, and is adjustably positioned relative to the diode 532 for optically modifying and directing the incident laser beam along a first optical path toward a reference plane which is located exteriorly of the head forwardly of the front wall 516 and which lies generally perpendicular to the longitudinal direction along which the incident laser beam propagates. A symbol to be read is located at the vicinity of the reference plane, either at, or at one side, or at an opposite side, of the reference plane, that is, anywhere within the depth of focus or field of the optically-modified incident laser beam. The depth of focus or field is also known as the working distance in which the symbols can be read. The incident laser beam reflects off each symbol in many directions, and that portion of the reflected laser light which travels away from the symbol back toward the head is known herein as the returning portion.
  • The laser beam passing through the optical train 538 impinges on a generally planar portion of a scanning mirror 540 forwardly reflects the laser beam impinging thereon in the direction of an arrow 542 through a forwardly-facing light-transmissive window 544 mounted on the front wall 516 and to the symbol.
  • The scanning mirror 540 is mounted on a scanning component, preferably a high-speed scanner motor 546 of the type shown and described in U.S. Pat. No 4,387,297, the entire contents of which are incorporated herein by reference. For purposes of this application, it is sufficient to point out that the motor 546 has an output shaft on which a support bracket is fixedly mounted. The scanning mirror 540 is fixedly mounted on the bracket and is driven in alternate circumferential directions over art lengths of any desired size, typically less than 360°, and at a rate of speed on the order of a plurality of oscillations per second. In a preferred embodiment, the scanning mirror 540 and the shaft are reciprocally and repetitively oscillated so that the scanning mirror repetitively sweeps the incident laser beam impinging on the mirror through an angular distance or arc length at the reference plane of about 32° and at a rate of about 20 scans or 40 oscillations per second.
  • The returning portion of the reflected laser light has a variable light intensity due to the different light-reflective properties of the various parts that comprise the symbol over the symbol during the scan. The returning portion of the reflected laser light is collected in the direction of arrow 548 by a generally concave spherical portion of the mirror 540. The generally planar mirror portion is integrally attached to the generally spherical mirror portion of the mirror 540. The spherical portion reflects the collected light through the optical train 538, the half-silvered mirror 537, and to a sensor means, e.g. a photosensor 550. The photosensor 550, preferably a photodiode, detects the variable intensity of the collected laser light over a field of view which extends along, and preferably beyond, the scan and generates an electrical analog signal indicative of the detected variable light intensity.
  • Also mounted in the head is a signal processing means 552 mounted on a circuit board 554, and operative for processing the analog electrical signal generated by the photodiode 550 into a digitized video signal. Data descriptive of the symbol can be derived from the video signal. Suitable signal processing circuitry for this purpose was described in U.S. Pat. No 4,251,798. Other components within the head include drive circuitry for the motor 546, an aiming light controller in the event that the laser diode 532 generates a laser beam which is not readily visible to the human eye, and a voltage converter for converting incoming voltage, e.g. from the battery 534, to a regulated voltage suitable for energizing the laser diode 532.
  • Also mounted on the circuit board 554 is a decode/control means 556 operative for decoding the digitized video signal to a digitized decoded signal from which the desired data descriptive of the symbol is obtained in accordance with an algorithm contained in a software control program in the microprocessor 530. The decode-control means includes a PROM for holding the control program, and an RAM for temporary data storage the decode/control means 556, together with the microprocessor, determine when a successful decoding of the symbol has been obtained, and also terminates the reading of the symbol upon determination of the successful decoding thereof. The initiation of the reading is caused by depression of the trigger 528. The decode/control means also includes control circuitry for controlling the actuation of the actuatable components in the head, namely, the laser diode 532, the photodiode 550, the motor 546, and all the other electronic subcircuits therein, as initiated by the trigger, as well as for communicating with the user that the reading has been automatically terminated as, for example, by sending a control signal to an indicator lamp 558 to illuminate the same or by energizing a buzzer or beeper.
  • The decoded signal is either conducted along a conductor within a cable interconnected between the head and a remote host computer 560, or is transmitted by radio wave from the head to the computer 560 by means of antenna 536. The computer 560 serves essentially as a large data base, may be an in-store processor, stores the decoded signal, and provides information related to the decoded signal. It includes a CPU 560′ and a memory 560″. For example, the host computer, in accordance with this invention, can provide retail price information on an updated basis corresponding to the products identified by their decoded symbols. The host computer can advantageously be incorporated in a portable terminal, or in a stationary terminal such as a cash register.
  • The data base can be incorporated in a portable housing held in one's other hand, or supported on the operator's person, for example, suspended from a belt or shoulder strap, in a field-portable application.
  • A keyboard 562′ may advantageously be provided on the head for entering data relating to the symbol and/or the product bearing the same. The keyboard includes a “done” key 562″ by which the user tells the host computer 60 that there are no more items to be scanned. A display 64 is also conveniently mounted adjacent the keyboard 562′ on the top wall 520 of the head, and is operative for displaying information relating to the symbol and/or the product bearing the same.
  • As described so far, each product 1300 bearing a label imprinted with a symbol 1310 is identified by scanning the symbol with the hand-held scanner head 510 in the manner depicted in FIG. 24.
  • The printing of the PDF code symbol 1320 is performed by a printer 562 that is either incorporated in the hand-held head 510 (see FIG. 21) or held in one's other hand, or worn on one's person (see FIG. 22), or mounted on a nearby support surface such as a countertop, or incorporated in another component such as a scale or cash register, as described below. The printer includes a thermal printhead 561 operative for thermally imprinting graphical markings on a journaled roll 563 of paper labels, each printed label being torn off the roll by being urged against tear-off edge 565 at the front of the head 510. The label preferably has a pressure-adhesive backing so that it can be applied directly on the container 340.
  • FIG. 25 illustrates an alternative printer/scanner arrangement which can be used with the present invention. The assembly comprises a portable data terminal 1100 having a keyboard 1102 for data entry, and a screen 1104. Attached to the portable data terminal are an integrated printer 1106 and a separate bar code reader 1108.
  • An alternative printer/scanner arrangement is shown in FIG. 26. As before, this comprises a portable data terminal 1100′, having a keyboard 1102′ and a screen 1104′. However, in this case the terminal incorporates an integral scanner head 1110. Attached to the terminal is a separate printer 1112.
  • It will be appreciated that the various different aspects presented herein can be combined or interchanged as appropriate. For example the “return to vendor” method described above in relation to FIGS. 21 to 26 may be carried out using a suitably configured optical reader of the type described with reference to FIGS. 1 to 8.
  • Many other embodiments of the invention are within the scope of the following claims:

Claims (26)

1-8. (canceled)
9. A system that facilitates reading a plurality of disparate symbols with disparate data formats, comprising:
interface script data and data formatted in accordance with the script data; and
a symbol reading device that reads the interface script data and generates an interface according to the interface script data, the interface enables the symbol reading device to read the data formatted in accordance with the interface script data.
10. The system of claim 9, the symbol being a barcode and the symbol reading device being a barcode scanner.
11. The system of claim 10, the barcode being a high density barcode.
12. The system of claim 9, the symbol reading device comprising a browser, the browser parses the interface script data to generate the interface.
13. The system of claim 12, the interface script data comprises a markup language.
14. The system of claim 13, the interface script data comprises HTML.
15. The system of claim 9, the symbol reading device is portable.
16. A personal digital assistant comprises the symbol reading device of claim 9.
17. The system of claim 9, the interface script data and the data formatted in accordance with the generated interface residing within a same symbol.
18. A system that facilitates reading a plurality of disparate symbols with disparate data formats, comprising:
interface script data that is accessible on a network;
a symbol reader that accesses the interface script data and employs the interface script data to generate a display interface, the display interface enables a display associated with the barcode reader to display data formatted in accordance with the interface script data.
19. The system of claim 18 further comprising a symbol that is read by the symbol reader, the symbol includes data that informs the symbol reader where on the network the interface script data resides.
20. The system of claim 19, the symbol is a barcode symbol.
21. The system of claim 18 further comprising a symbol, the symbol comprising the interface script data.
22. The system of claim 18, the network being one or more of the Internet and an intranet.
23. The system of claim 18, the symbol reading device comprising a component that facilitates scanning and decoding of barcode symbols.
24. The system of claim 18, further comprising a browser that parses the interface script data.
25. The system of claim 24, the interface script data comprises a markup language.
26. A method for accessing data on a network, comprising:
providing a symbol that comprises information relating to location of the data on the network;
reading the symbol via a symbol reading device; and
automatically accessing the data based upon the information relating to the location of the data on the network read by the symbol reading device.
27. The method of claim 26, further comprising displaying the accessed data on a display associated with the symbol reading device.
28. The method of claim 26, further comprising relaying the information relating to the location of the data on the network to a computing device via a wireless connection.
29. The method of claim 26, the data is a script that is employed to generate an interface, the interface utilized by the symbol reading device to read data associated with the interface.
30. The method of claim 26, the network being one or more of the Internet and an intranet.
31. The method of claim 26, further comprising relaying the information relating to the location of the data on the network to a computing device via a cellular telephone channel.
32. A system that facilitates accessing data on a network, comprising:
means for providing a barcode that comprises information relating to a location on the network that the data resides;
means for reading the barcode and decoding the information;
means for relaying the information to a browser that utilizes the information to access the data on the network.
33. The system of claim 32, the data is interface script data that is employed to generate an interface, the interface utilized to enable a barcode scanner to process data within a barcode that is associated with the interface.
US10/838,007 1995-11-17 2004-05-03 Method and system for remote browsing of computer files using a bar code reader Abandoned US20050223389A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US10/838,007 US20050223389A1 (en) 1995-11-17 2004-05-03 Method and system for remote browsing of computer files using a bar code reader

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US687295P 1995-11-17 1995-11-17
US69126396A 1996-08-02 1996-08-02
US91660597A 1997-08-22 1997-08-22
US09/520,929 US6507864B1 (en) 1996-08-02 2000-03-08 Client-server software for controlling data collection device from host computer
US09/570,961 US6714969B1 (en) 1995-11-17 2000-05-15 Mobile terminal with integrated host application software
US10/838,007 US20050223389A1 (en) 1995-11-17 2004-05-03 Method and system for remote browsing of computer files using a bar code reader

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US09/570,961 Continuation US6714969B1 (en) 1995-11-17 2000-05-15 Mobile terminal with integrated host application software

Publications (1)

Publication Number Publication Date
US20050223389A1 true US20050223389A1 (en) 2005-10-06

Family

ID=31999436

Family Applications (2)

Application Number Title Priority Date Filing Date
US09/570,961 Expired - Lifetime US6714969B1 (en) 1995-11-17 2000-05-15 Mobile terminal with integrated host application software
US10/838,007 Abandoned US20050223389A1 (en) 1995-11-17 2004-05-03 Method and system for remote browsing of computer files using a bar code reader

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US09/570,961 Expired - Lifetime US6714969B1 (en) 1995-11-17 2000-05-15 Mobile terminal with integrated host application software

Country Status (1)

Country Link
US (2) US6714969B1 (en)

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040190750A1 (en) * 1999-05-19 2004-09-30 Rodriguez Tony F. Watermarked printed objects and methods
US20070213094A1 (en) * 2006-03-09 2007-09-13 Intel Corporation Method and apparatus for a configurable processing and storage device
US20080228773A1 (en) * 2007-03-14 2008-09-18 Hand Held Products, Inc. Apparatus and method for data input device
US20090280819A1 (en) * 2008-05-07 2009-11-12 At&T Mobility Ii Llc Femto cell signaling gating
US20090288152A1 (en) * 2008-05-13 2009-11-19 At&T Mobility Ii Llc Automatic population of an access control list to manage femto cell coverage
US20090287920A1 (en) * 2008-05-14 2009-11-19 Canamex Corporation Method for establishing bi-directional messaging communications with wireless devices and with remote locations over a network
US20090298470A1 (en) * 2008-05-13 2009-12-03 At&T Mobility Ii Llc Administration of access lists for femtocell service
US20100027469A1 (en) * 2008-06-12 2010-02-04 At&T Mobility Ii Llc Point of sales and customer support for femtocell service and equipment
US20100083226A1 (en) * 2008-09-30 2010-04-01 Rockwell Automation Technologies,Inc. Software object property return method and system
US20100165401A1 (en) * 2005-09-19 2010-07-01 Silverbrook Research Pty Ltd Mobile device for printing a security identification
US20100272024A1 (en) * 2005-10-21 2010-10-28 At&T Intellectual Property I, L.P. Intelligent pico-cell for transport of wireless device communications over wireline networks
US20110093913A1 (en) * 2009-10-15 2011-04-21 At&T Intellectual Property I, L.P. Management of access to service in an access point
US7982904B2 (en) 2005-09-19 2011-07-19 Silverbrook Research Pty Ltd Mobile telecommunications device for printing a competition form
US8286858B2 (en) 2005-09-19 2012-10-16 Silverbrook Research Pty Ltd Telephone having printer and sensor
US8290512B2 (en) 2005-09-19 2012-10-16 Silverbrook Research Pty Ltd Mobile phone for printing and interacting with webpages
US8326296B1 (en) 2006-07-12 2012-12-04 At&T Intellectual Property I, L.P. Pico-cell extension for cellular network
US20140105450A1 (en) * 2012-10-17 2014-04-17 Robert Berkeley System and method for targeting and reading coded content
US8856044B1 (en) 2013-03-23 2014-10-07 Jeffrey Drazan Segmented access of remotely stored biographical data to a client device

Families Citing this family (97)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8352400B2 (en) 1991-12-23 2013-01-08 Hoffberg Steven M Adaptive pattern recognition based controller apparatus and method and human-factored interface therefore
US6714969B1 (en) * 1995-11-17 2004-03-30 Symbol Technologies, Inc. Mobile terminal with integrated host application software
US6085172A (en) * 1996-10-02 2000-07-04 Nintendo Of America Inc. Method and apparatus for efficient handling of product return transactions
US8788432B2 (en) 1996-10-02 2014-07-22 Nintendo Of America Inc. Method and apparatus for efficient handling of product return transactions
US20060193278A1 (en) * 1997-10-15 2006-08-31 Wolfgang Theimer Mobile telephone for Internet applications
JP2001055561A (en) 1999-08-17 2001-02-27 Taiyu Kensetsu Co Ltd Wearable mixture endowed with freeze inhibition function, pavement system and pavement
US7966078B2 (en) 1999-02-01 2011-06-21 Steven Hoffberg Network media appliance system and method
US6823386B1 (en) * 1999-02-25 2004-11-23 Nortel Networks Limited Correlating data streams of different protocols
US6990548B1 (en) * 2000-06-15 2006-01-24 Hewlett-Packard Development Company, L.P. Methods and arrangements for configuring a printer over a wireless communication link using a wireless communication device
US9135393B1 (en) * 2000-08-02 2015-09-15 Smiths Medical Asd, Inc. Processing program data for medical pumps
US7035932B1 (en) * 2000-10-27 2006-04-25 Eric Morgan Dowling Federated multiprotocol communication
US6901429B2 (en) * 2000-10-27 2005-05-31 Eric Morgan Dowling Negotiated wireless peripheral security systems
US6965914B2 (en) * 2000-10-27 2005-11-15 Eric Morgan Dowling Negotiated wireless peripheral systems
US9310892B2 (en) 2000-11-06 2016-04-12 Nant Holdings Ip, Llc Object information derived from object images
US7565008B2 (en) 2000-11-06 2009-07-21 Evryx Technologies, Inc. Data capture and identification system and process
US7899243B2 (en) 2000-11-06 2011-03-01 Evryx Technologies, Inc. Image capture and identification system and process
US7016532B2 (en) * 2000-11-06 2006-03-21 Evryx Technologies Image capture and identification system and process
US8218873B2 (en) * 2000-11-06 2012-07-10 Nant Holdings Ip, Llc Object information derived from object images
US8224078B2 (en) 2000-11-06 2012-07-17 Nant Holdings Ip, Llc Image capture and identification system and process
US7680324B2 (en) 2000-11-06 2010-03-16 Evryx Technologies, Inc. Use of image-derived information as search criteria for internet and other search engines
US7272788B2 (en) * 2000-12-29 2007-09-18 Fotomedia Technologies, Llc Client-server system for merging of metadata with images
US20020167916A1 (en) * 2001-05-14 2002-11-14 Clapper Edward O. Processor-based shopping cart
US20030229472A1 (en) * 2001-12-06 2003-12-11 Kantzes Christopher P. Field maintenance tool with improved device description communication and storage
US7426452B2 (en) * 2001-12-06 2008-09-16 Fisher-Rosemount Systems. Inc. Dual protocol handheld field maintenance tool with radio-frequency communication
US7039744B2 (en) * 2002-03-12 2006-05-02 Fisher-Rosemount Systems, Inc. Movable lead access member for handheld field maintenance tool
US10261506B2 (en) * 2002-12-05 2019-04-16 Fisher-Rosemount Systems, Inc. Method of adding software to a field maintenance tool
JP4739183B2 (en) * 2003-03-06 2011-08-03 フィッシャー−ローズマウント システムズ, インコーポレイテッド Battery
US8364547B2 (en) * 2003-03-17 2013-01-29 Gate Gourmet Switzerland, Gmbh System for real-time sales and inventory reconciliation
CA2518895C (en) * 2003-03-17 2013-12-31 Abanco International Llc System and method for sales and inventory reconciliation
US20060085308A1 (en) * 2003-03-17 2006-04-20 Abanco International, Llc System and method for sales and service reconciliation
US7512521B2 (en) * 2003-04-30 2009-03-31 Fisher-Rosemount Systems, Inc. Intrinsically safe field maintenance tool with power islands
US20050003839A1 (en) * 2003-05-13 2005-01-06 Tripp Jeffrey William Decision influence data system
US7054695B2 (en) * 2003-05-15 2006-05-30 Fisher-Rosemount Systems, Inc. Field maintenance tool with enhanced scripts
US7036386B2 (en) * 2003-05-16 2006-05-02 Fisher-Rosemount Systems, Inc. Multipurpose utility mounting assembly for handheld field maintenance tool
US8874402B2 (en) * 2003-05-16 2014-10-28 Fisher-Rosemount Systems, Inc. Physical memory handling for handheld field maintenance tools
US7199784B2 (en) * 2003-05-16 2007-04-03 Fisher Rosemount Systems, Inc. One-handed operation of a handheld field maintenance tool
US7526802B2 (en) * 2003-05-16 2009-04-28 Fisher-Rosemount Systems, Inc. Memory authentication for intrinsically safe field maintenance tools
US7221910B2 (en) * 2003-10-17 2007-05-22 Sharp Laboratories Of America, Inc. Method for transferring data objects between portable devices
US7707039B2 (en) * 2004-02-15 2010-04-27 Exbiblio B.V. Automatic modification of web pages
US8442331B2 (en) 2004-02-15 2013-05-14 Google Inc. Capturing text from rendered documents using supplemental information
US20060136629A1 (en) * 2004-08-18 2006-06-22 King Martin T Scanner having connected and unconnected operational behaviors
US10635723B2 (en) 2004-02-15 2020-04-28 Google Llc Search engines and systems with handheld document data capture devices
EP1771784A4 (en) * 2004-04-01 2009-05-06 Exbiblio Bv Triggering actions in response to optically or acoustically capturing keywords from a rendered document
US7812860B2 (en) 2004-04-01 2010-10-12 Exbiblio B.V. Handheld device for capturing text from both a document printed on paper and a document displayed on a dynamic display device
US8954336B2 (en) 2004-02-23 2015-02-10 Smiths Medical Asd, Inc. Server for medical device
US7894670B2 (en) 2004-04-01 2011-02-22 Exbiblio B.V. Triggering actions in response to optically or acoustically capturing keywords from a rendered document
US20060081714A1 (en) 2004-08-23 2006-04-20 King Martin T Portable scanning device
US9116890B2 (en) 2004-04-01 2015-08-25 Google Inc. Triggering actions in response to optically or acoustically capturing keywords from a rendered document
US7990556B2 (en) 2004-12-03 2011-08-02 Google Inc. Association of a portable scanner with input/output and storage devices
EP1759282A4 (en) * 2004-04-01 2009-05-06 Exbiblio Bv Data capture from rendered documents using handheld device
US9143638B2 (en) 2004-04-01 2015-09-22 Google Inc. Data capture from rendered documents using handheld device
US8081849B2 (en) 2004-12-03 2011-12-20 Google Inc. Portable scanning and memory device
US8146156B2 (en) 2004-04-01 2012-03-27 Google Inc. Archive of text captures from rendered documents
US9008447B2 (en) 2004-04-01 2015-04-14 Google Inc. Method and system for character recognition
US20060098900A1 (en) 2004-09-27 2006-05-11 King Martin T Secure data gathering from rendered documents
US8713418B2 (en) 2004-04-12 2014-04-29 Google Inc. Adding value to a rendered document
EP1741028A4 (en) * 2004-04-12 2013-01-09 Google Inc Adding value to a rendered document
US8489624B2 (en) 2004-05-17 2013-07-16 Google, Inc. Processing techniques for text capture from a rendered document
US8620083B2 (en) 2004-12-03 2013-12-31 Google Inc. Method and system for character recognition
US8874504B2 (en) 2004-12-03 2014-10-28 Google Inc. Processing techniques for visual capture data from a rendered document
EP1782230A4 (en) * 2004-07-19 2009-11-04 Exbiblio Bv Automatic modification of web pages
US8346620B2 (en) 2004-07-19 2013-01-01 Google Inc. Automatic modification of web pages
WO2006023715A2 (en) * 2004-08-18 2006-03-02 Exbiblio B.V. Applying scanned information to identify content
US20070100834A1 (en) * 2004-09-15 2007-05-03 John Landry System and method for managing data in a distributed computer system
US20060102759A1 (en) * 2004-11-16 2006-05-18 Delong Mark Automated tracking and billing system for the application of asphalt release agents
US7568628B2 (en) 2005-03-11 2009-08-04 Hand Held Products, Inc. Bar code reading device with global electronic shutter control
US7770799B2 (en) 2005-06-03 2010-08-10 Hand Held Products, Inc. Optical reader having reduced specular reflection read failures
EP2067119A2 (en) 2006-09-08 2009-06-10 Exbiblio B.V. Optical scanners, such as hand-held optical scanners
GB2444305B (en) * 2007-01-26 2010-12-22 Key Criteria Connect Ltd Method of identifying devices in mobile and desktop environments
GB2445991B (en) * 2007-01-26 2009-04-01 Key Criteria Connect Ltd Method of loading software in mobile and desktop environments
US20090089331A1 (en) * 2007-04-04 2009-04-02 Boaz Thomas L Real-Time Method and System for Tracking Mail
EP1993008A1 (en) * 2007-05-18 2008-11-19 Siemens Aktiengesellschaft Method for operating a modular system, in particular a process automation system
US8157176B2 (en) * 2007-05-25 2012-04-17 Hewlett-Packard Development Company, L.P. Modular marking apparatus and method
CN102385346B (en) * 2007-06-13 2015-07-29 费希尔-罗斯蒙德系统公司 The improvement function of handheld field maintenance tools
US9167070B2 (en) * 2007-07-31 2015-10-20 Qualcomm Incorporated Widget discovery in computing devices
US7823778B1 (en) 2007-08-08 2010-11-02 Cellco Partnership Wireless inventory scanner system and method
US20090177769A1 (en) * 2007-08-10 2009-07-09 Smiths Medical Md Determining online status of a medical device
US20090064190A1 (en) * 2007-08-31 2009-03-05 Mindy Pereira Techniques for receiving event information
US9544180B2 (en) * 2007-08-31 2017-01-10 Qualcomm Incorporated Techniques for group messaging on a mobile computing device
US20090265423A1 (en) * 2008-04-16 2009-10-22 Aricent Inc. Method and system of mobile application implementation on network server
DE202010018601U1 (en) 2009-02-18 2018-04-30 Google LLC (n.d.Ges.d. Staates Delaware) Automatically collecting information, such as gathering information using a document recognizing device
WO2010105245A2 (en) 2009-03-12 2010-09-16 Exbiblio B.V. Automatically providing content associated with captured information, such as information captured in real-time
US8447066B2 (en) 2009-03-12 2013-05-21 Google Inc. Performing actions based on capturing information from rendered documents, such as documents under copyright
US9081799B2 (en) 2009-12-04 2015-07-14 Google Inc. Using gestalt information to identify locations in printed information
US9323784B2 (en) 2009-12-09 2016-04-26 Google Inc. Image search using text-based elements within the contents of images
WO2012033856A1 (en) * 2010-09-07 2012-03-15 Revel Systems, Inc. Point of sale system
KR20120040958A (en) * 2010-10-20 2012-04-30 삼성전자주식회사 Method for communicating in a portable terminal
JP4929407B1 (en) * 2011-03-09 2012-05-09 株式会社東芝 Information processing apparatus and display control method
US8707163B2 (en) * 2011-10-04 2014-04-22 Wesley John Boudville Transmitting and receiving data via barcodes through a cellphone for privacy and anonymity
USD676850S1 (en) 2011-11-04 2013-02-26 Datalogic Ip Tech S.R.L. Portable terminal
WO2014014879A2 (en) * 2012-07-17 2014-01-23 Good Technology Corporation Systems and methods for facilitating service provision between applications
EP2948204B1 (en) 2013-01-28 2021-08-25 Smiths Medical ASD, Inc. Medication safety devices and methods
USD716307S1 (en) 2013-05-16 2014-10-28 Datalogic Ip Tech S.R.L. Portable terminal
US9848458B2 (en) * 2014-12-01 2017-12-19 Oceus Networks, Inc. Wireless parameter-sensing node and network thereof
US11281492B1 (en) * 2019-05-31 2022-03-22 Juniper Networks, Inc. Moving application containers across compute nodes
CN112443869B (en) * 2019-08-29 2022-11-29 宁波方太厨具有限公司 Indoor range hood remote control terminal binding method in centralized smoke exhaust system of building
BR112022004585A2 (en) * 2019-09-11 2022-06-14 Lazlo 326 LLC Point of sale intermediation system

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5604516A (en) * 1994-06-30 1997-02-18 Symbol Technologies, Inc. Graphical user interface control for providing both automatic and manual data input
US6507864B1 (en) * 1996-08-02 2003-01-14 Symbol Technologies, Inc. Client-server software for controlling data collection device from host computer
US6694366B1 (en) * 1998-04-29 2004-02-17 Symbol Technologies, Inc. Data reconciliation between a computer and a mobile data collection terminal
US6714969B1 (en) * 1995-11-17 2004-03-30 Symbol Technologies, Inc. Mobile terminal with integrated host application software
US6718337B1 (en) * 1998-01-15 2004-04-06 Symbol Technologies, Inc. Apparatus with extended markup language date capture capability
US7273179B2 (en) * 2004-07-09 2007-09-25 Datalogic Scanning, Inc. Portable data reading device with integrated web server for configuration and data extraction

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5905248A (en) * 1990-09-11 1999-05-18 Metrologic Instruments, Inc. System and method for carrying out information-related transactions using web documents embodying transaction enabling applets automatically launched and executed in response to reading URL-encoded symbols pointing thereto
US5664231A (en) 1994-04-29 1997-09-02 Tps Electronics PCMCIA interface card for coupling input devices such as barcode scanning engines to personal digital assistants and palmtop computers
EP0744856A3 (en) 1995-05-26 1997-06-25 At & T Corp Apparatus for and method of utilizing product identifier codes to establish communication connections
US5717737A (en) 1995-06-01 1998-02-10 Padcom, Inc. Apparatus and method for transparent wireless communication between a remote device and a host system
WO1996041446A1 (en) 1995-06-07 1996-12-19 E-Comm Incorporated System for detecting unauthorized account access
US5978773A (en) 1995-06-20 1999-11-02 Neomedia Technologies, Inc. System and method for using an ordinary article of commerce to access a remote computer
US6466783B2 (en) * 1995-12-11 2002-10-15 Openwave Systems Inc. Visual interface to mobile subscriber account services
US6003007A (en) * 1996-03-28 1999-12-14 Dirienzo; Andrew L. Attachment integrated claims system and operating method therefor
US6012102A (en) 1996-04-02 2000-01-04 Infogear Technology Corporation System using machine-readable printed symbols created from encoded data resource specifiers to establish connection to data resource on data communications network
US5821512A (en) 1996-06-26 1998-10-13 Telxon Corporation Shopping cart mounted portable data collection device with tethered dataform reader
US6119935A (en) 1996-06-26 2000-09-19 Telxon Corporation Shopping cart mounted portable data collection device with tethered dataform reader
US5987611A (en) 1996-12-31 1999-11-16 Zone Labs, Inc. System and methodology for managing internet access on a per application basis for client computers connected to the internet
US6049796A (en) * 1997-02-24 2000-04-11 Nokia Mobile Phones Limited Personal digital assistant with real time search capability
US6321992B1 (en) * 1997-03-19 2001-11-27 Metrologic Instruments, Inc. Internet-based system and method for tracking objects bearing URL-encoded bar code symbols
US6535913B2 (en) * 1997-10-31 2003-03-18 Selectica, Inc. Method and apparatus for use of an application state storage system in interacting with on-line services
US6094689A (en) 1998-02-13 2000-07-25 Hewlett-Packard Company System for coupling a host computer to an image scanner in which high level functions are migrated to the attached host computer
US6308205B1 (en) * 1998-10-22 2001-10-23 Canon Kabushiki Kaisha Browser-based network management allowing administrators to use web browser on user's workstation to view and update configuration of network devices
US6356905B1 (en) * 1999-03-05 2002-03-12 Accenture Llp System, method and article of manufacture for mobile communication utilizing an interface support framework
US6134406A (en) 1999-03-11 2000-10-17 Minnesota Mining And Manufacturing Company Belt steering mechanism for use with an electrophotographic imaging system
US6304898B1 (en) * 1999-10-13 2001-10-16 Datahouse, Inc. Method and system for creating and sending graphical email
US6430624B1 (en) * 1999-10-21 2002-08-06 Air2Web, Inc. Intelligent harvesting and navigation system and method
US6336137B1 (en) * 2000-03-31 2002-01-01 Siebel Systems, Inc. Web client-server system and method for incompatible page markup and presentation languages
US6453361B1 (en) * 2000-10-27 2002-09-17 Ipac Acquisition Subsidiary I, Llc Meta-application architecture for integrating photo-service websites

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5604516A (en) * 1994-06-30 1997-02-18 Symbol Technologies, Inc. Graphical user interface control for providing both automatic and manual data input
US6714969B1 (en) * 1995-11-17 2004-03-30 Symbol Technologies, Inc. Mobile terminal with integrated host application software
US6507864B1 (en) * 1996-08-02 2003-01-14 Symbol Technologies, Inc. Client-server software for controlling data collection device from host computer
US6718337B1 (en) * 1998-01-15 2004-04-06 Symbol Technologies, Inc. Apparatus with extended markup language date capture capability
US6694366B1 (en) * 1998-04-29 2004-02-17 Symbol Technologies, Inc. Data reconciliation between a computer and a mobile data collection terminal
US7273179B2 (en) * 2004-07-09 2007-09-25 Datalogic Scanning, Inc. Portable data reading device with integrated web server for configuration and data extraction

Cited By (76)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040190750A1 (en) * 1999-05-19 2004-09-30 Rodriguez Tony F. Watermarked printed objects and methods
US7860533B2 (en) * 2005-09-19 2010-12-28 Silverbrook Research Pty Ltd Mobile device for printing a security identification
US20100165401A1 (en) * 2005-09-19 2010-07-01 Silverbrook Research Pty Ltd Mobile device for printing a security identification
US7982904B2 (en) 2005-09-19 2011-07-19 Silverbrook Research Pty Ltd Mobile telecommunications device for printing a competition form
US8286858B2 (en) 2005-09-19 2012-10-16 Silverbrook Research Pty Ltd Telephone having printer and sensor
US8290512B2 (en) 2005-09-19 2012-10-16 Silverbrook Research Pty Ltd Mobile phone for printing and interacting with webpages
US20100272024A1 (en) * 2005-10-21 2010-10-28 At&T Intellectual Property I, L.P. Intelligent pico-cell for transport of wireless device communications over wireline networks
US8208431B2 (en) 2005-10-21 2012-06-26 At&T Intellectual Property I, Lp Intelligent pico-cell for transport of wireless device communications over wireline networks
US20070213094A1 (en) * 2006-03-09 2007-09-13 Intel Corporation Method and apparatus for a configurable processing and storage device
US10149126B2 (en) 2006-07-12 2018-12-04 At&T Intellectual Property I, L.P. Pico-cell extension for cellular network
US8326296B1 (en) 2006-07-12 2012-12-04 At&T Intellectual Property I, L.P. Pico-cell extension for cellular network
US8897752B2 (en) 2006-07-12 2014-11-25 At&T Intellectual Property I, L.P. Pico-cell extension for cellular network
US9301113B2 (en) 2006-07-12 2016-03-29 At&T Intellectual Property I, L.P. Pico-cell extension for cellular network
US9674679B2 (en) 2006-07-12 2017-06-06 At&T Intellectual Property I, L.P. Pico-cell extension for cellular network
US20080228773A1 (en) * 2007-03-14 2008-09-18 Hand Held Products, Inc. Apparatus and method for data input device
US8626223B2 (en) 2008-05-07 2014-01-07 At&T Mobility Ii Llc Femto cell signaling gating
US8812049B2 (en) 2008-05-07 2014-08-19 At&T Mobility Ii Llc Femto cell signaling gating
US20090280819A1 (en) * 2008-05-07 2009-11-12 At&T Mobility Ii Llc Femto cell signaling gating
US8522312B2 (en) 2008-05-13 2013-08-27 At&T Mobility Ii Llc Access control lists and profiles to manage femto cell coverage
US8850048B2 (en) 2008-05-13 2014-09-30 At&T Mobility Ii Llc Reciprocal addition of attribute fields in access control lists and profiles for femto cell coverage management
US10499247B2 (en) 2008-05-13 2019-12-03 At&T Mobility Ii Llc Administration of access lists for femtocell service
US10225733B2 (en) 2008-05-13 2019-03-05 At&T Mobility Ii Llc Exchange of access control lists to manage femto cell coverage
US20090288152A1 (en) * 2008-05-13 2009-11-19 At&T Mobility Ii Llc Automatic population of an access control list to manage femto cell coverage
US9930526B2 (en) 2008-05-13 2018-03-27 At&T Mobility Ii Llc Interface for access management of femto cell coverage
US20100027521A1 (en) * 2008-05-13 2010-02-04 At&T Mobility Ii Llc Intra-premises content and equipment management in a femtocell network
US8209745B2 (en) * 2008-05-13 2012-06-26 At&T Mobility Ii Llc Automatic population of an access control list to manage femto cell coverage
US8219094B2 (en) 2008-05-13 2012-07-10 At&T Mobility Ii Llc Location-based services in a femtocell network
US8254368B2 (en) 2008-05-13 2012-08-28 At&T Mobility Ii Llc Femtocell architecture for information management
US8274958B2 (en) 2008-05-13 2012-09-25 At&T Mobility Ii Llc Intra-premises content and equipment management in a femtocell network
US20090298470A1 (en) * 2008-05-13 2009-12-03 At&T Mobility Ii Llc Administration of access lists for femtocell service
US20090299788A1 (en) * 2008-05-13 2009-12-03 At&T Mobility Ii Llc Commerce and services in a femtocell network
US20090288140A1 (en) * 2008-05-13 2009-11-19 At&T Mobility Ii Llc Access control lists and profiles to manage femto cell coverage
US8331228B2 (en) 2008-05-13 2012-12-11 At&T Mobility Ii Llc Exchange of access control lists to manage femto cell coverage
US8463296B2 (en) 2008-05-13 2013-06-11 At&T Mobility Ii Llc Location-based services in a femtocell network
US8490156B2 (en) 2008-05-13 2013-07-16 At&T Mobility Ii Llc Interface for access management of FEMTO cell coverage
US9877195B2 (en) 2008-05-13 2018-01-23 At&T Mobility Ii Llc Location-based services in a femtocell network
US9775036B2 (en) 2008-05-13 2017-09-26 At&T Mobility Ii Llc Access control lists and profiles to manage femto cell coverage
US20090286540A1 (en) * 2008-05-13 2009-11-19 At&T Mobility Ii Llc Femtocell architecture for information management
US20090286544A1 (en) * 2008-05-13 2009-11-19 At&T Mobility Ii Llc Administration of an access control list to femto cell coverage
US9775037B2 (en) 2008-05-13 2017-09-26 At&T Mobility Ii Llc Intra-premises content and equipment management in a femtocell network
US9591486B2 (en) 2008-05-13 2017-03-07 At&T Mobility Ii Llc Intra-premises content and equipment management in a femtocell network
US8719420B2 (en) 2008-05-13 2014-05-06 At&T Mobility Ii Llc Administration of access lists for femtocell service
US9584984B2 (en) 2008-05-13 2017-02-28 At&T Mobility Ii Llc Reciprocal addition of attribute fields in access control lists and profiles for femto cell coverage management
US8755820B2 (en) 2008-05-13 2014-06-17 At&T Mobility Ii Llc Location-based services in a femtocell network
US8763082B2 (en) 2008-05-13 2014-06-24 At&T Mobility Ii Llc Interactive client management of an access control list
US8787342B2 (en) 2008-05-13 2014-07-22 At&T Mobility Ii Llc Intra-premises content and equipment management in a femtocell network
US20090288139A1 (en) * 2008-05-13 2009-11-19 At&T Mobility Ii Llc Interface for access management of femto cell coverage
US9538383B2 (en) 2008-05-13 2017-01-03 At&T Mobility Ii Llc Interface for access management of femto cell coverage
US9503457B2 (en) 2008-05-13 2016-11-22 At&T Mobility Ii Llc Administration of access lists for femtocell service
US9392461B2 (en) 2008-05-13 2016-07-12 At&T Mobility Ii Llc Access control lists and profiles to manage femto cell coverage
US8863235B2 (en) 2008-05-13 2014-10-14 At&T Mobility Ii Llc Time-dependent white list generation
US20090286510A1 (en) * 2008-05-13 2009-11-19 At&T Mobility Il Llc Location-based services in a femtocell network
US9369876B2 (en) 2008-05-13 2016-06-14 At&T Mobility Ii Llc Location-based services in a femtocell network
US9319964B2 (en) 2008-05-13 2016-04-19 At&T Mobility Ii Llc Exchange of access control lists to manage femto cell coverage
US9019819B2 (en) 2008-05-13 2015-04-28 At&T Mobility Ii Llc Exchange of access control lists to manage femto cell coverage
US9094891B2 (en) 2008-05-13 2015-07-28 At&T Mobility Ii Llc Location-based services in a femtocell network
US9155022B2 (en) 2008-05-13 2015-10-06 At&T Mobility Ii Llc Interface for access management of FEMTO cell coverage
US20090288144A1 (en) * 2008-05-13 2009-11-19 At&T Mobility Ii Llc Time-dependent white list generation
US20090287920A1 (en) * 2008-05-14 2009-11-19 Canamex Corporation Method for establishing bi-directional messaging communications with wireless devices and with remote locations over a network
US8504032B2 (en) 2008-06-12 2013-08-06 At&T Intellectual Property I, L.P. Femtocell service registration, activation, and provisioning
US20100041365A1 (en) * 2008-06-12 2010-02-18 At&T Mobility Ii Llc Mediation, rating, and billing associated with a femtocell service framework
US20100041364A1 (en) * 2008-06-12 2010-02-18 At&T Mobility Ii Llc Femtocell service registration, activation, and provisioning
US20100027469A1 (en) * 2008-06-12 2010-02-04 At&T Mobility Ii Llc Point of sales and customer support for femtocell service and equipment
US9246759B2 (en) 2008-06-12 2016-01-26 At&T Mobility Ii Llc Point of sales and customer support for femtocell service and equipment
US8942180B2 (en) 2008-06-12 2015-01-27 At&T Mobility Ii Llc Point of sales and customer support for femtocell service and equipment
US8743776B2 (en) 2008-06-12 2014-06-03 At&T Mobility Ii Llc Point of sales and customer support for femtocell service and equipment
US8655361B2 (en) 2008-06-12 2014-02-18 At&T Mobility Ii Llc Femtocell service registration, activation, and provisioning
US20100083226A1 (en) * 2008-09-30 2010-04-01 Rockwell Automation Technologies,Inc. Software object property return method and system
US8990768B2 (en) * 2008-09-30 2015-03-24 Rockwell Automation Technologies, Inc. Software object property return method and system
US9509701B2 (en) 2009-10-15 2016-11-29 At&T Intellectual Property I, L.P. Management of access to service in an access point
US8510801B2 (en) 2009-10-15 2013-08-13 At&T Intellectual Property I, L.P. Management of access to service in an access point
US10645582B2 (en) 2009-10-15 2020-05-05 At&T Intellectual Property I, L.P. Management of access to service in an access point
US20110093913A1 (en) * 2009-10-15 2011-04-21 At&T Intellectual Property I, L.P. Management of access to service in an access point
US8856878B2 (en) 2009-10-15 2014-10-07 At&T Intellectual Property I, L.P Management of access to service in an access point
US20140105450A1 (en) * 2012-10-17 2014-04-17 Robert Berkeley System and method for targeting and reading coded content
US8856044B1 (en) 2013-03-23 2014-10-07 Jeffrey Drazan Segmented access of remotely stored biographical data to a client device

Also Published As

Publication number Publication date
US6714969B1 (en) 2004-03-30

Similar Documents

Publication Publication Date Title
US6714969B1 (en) Mobile terminal with integrated host application software
CA2212121C (en) Improvements in data retrieval
US6783071B2 (en) Scanner pairing in a bluetooth POS network
US6405049B2 (en) Portable data terminal and cradle
US6144848A (en) Handheld remote computer control and methods for secured interactive real-time telecommunications
US7093759B2 (en) Low-power hand-held transaction device
US20100217723A1 (en) Data collection device and network having radio signal responsive operation
WO1996041447A9 (en) Low power telecommunication controller for a host computer server
US20100025470A1 (en) Bar code reader, optical mouse, and bar code reading method
US20030158974A1 (en) Software method for emulating a serial port between applications for enabling communications by mobile bar code readers and computer terminals in wireless networks
FR2752347A1 (en) IMPROVEMENTS IN DATA SEARCHING
AU752134B2 (en) Improvements in data retrieval
AU736732B2 (en) Improvements in data retrieval
AU750288B2 (en) Improvements in data retrieval
AU758020B2 (en) Improvements in data retrieval
CN201465149U (en) Hand-held terminal processor for tracing accelerated goods traffic in a real-time manner and transmitting numerical code information
JPH11338662A (en) Printing processor

Legal Events

Date Code Title Description
STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION