This invention relates generally to providing a network accessible node interfacing with a fleet of terminals, and in particular to providing a network accessible interface node that facilitates management of a fleet of portable encoded information reading terminals (EIR terminals), by directing performance of software upgrades and/or configuration update actions by one or more members of the fleet of EIR terminals.
Various organizations, including retail and manufacturing businesses, can employ sizable fleets of EIR terminals. These terminals include, for example, barcode reading terminals and other types of EIR terminals. These terminals are typically mobile, but are periodically engaged with a docking station (e.g., for charging the battery at the end of every working shift). A number of actions typically need to be performed upon the terminals as part of the terminal fleet management operations, including terminal reprogramming operations (e.g., terminal software upgrade or terminal configuration update). Communicating and interfacing with a large fleet of mobile terminals can require substantial planning and effort.
The objects and features of the invention can be better understood with reference to the claims and drawings described below. The drawings are not necessarily to scale, the emphasis is instead generally being placed upon illustrating the principles of the invention. Within the drawings, like reference numbers are used to indicate like parts throughout the various views.
a illustrates a communications network including an EIR terminal interface node, a plurality of EIR terminals, and a resource network.
b illustrates a diagram of a data collection system comprising several interface nodes disposed at several data collection facilities.
c illustrates a block diagram of a generic encoded information reading terminal.
d illustrates a block diagram of an exemplary embodiment of an interface node 100 of
e illustrates a block diagram of an exemplary embodiment of a resource network computer 140 of
a illustrates a flow diagram of a sample implementation of the execution thread responsible for processing the messages received by EIR terminal interface node from the EIR terminal members of the managed fleet.
b illustrates a flow diagram of a sample implementation of the execution thread responsible for processing the messages received by EIR terminal interface node from the resource network.
a illustrates an example of the structure of the tables of an EIR terminal Fleet Management Database.
b illustrates an example of the structure of the tables of an EIR terminal Fleet Management Database.
a illustrates a user interface by means of which a user can configure the resource network to perform the fleet management tasks and/or generate fleet management reports.
b illustrates a user interface by means of which a user can configure EIR terminal interface node.
There is described herein a data collection system having one or more encoded information reading (EIR) terminals and an EIR terminal interface node (interface node) in conjunction with the one or more EIR terminals. The interface node can be configured for use in managing the reprogramming of the one or more EIR terminals. In one embodiment, the interface node can be disposed in a common local facility and connected to a common local area network with the at least one EIR terminal. In one embodiment, the interface node can retain status information respecting EIR terminals of the system. In another embodiment, the interface node can be configured to receive and process status messages from EIR terminals updating the status information of each EIR terminal in the system. The interface node can update a terminal status database in communication with the interface node utilizing terminal status data contained in a terminal status message received from an EIR terminal.
The terminal status database can facilitate resolving terminal identifying conditions based upon the presence and/or status of specific hardware and/or software components, thus allowing for flexible descriptions of subsets of terminals to be reprogrammed. For example, all terminals having a specific hardware component might need to perform an upgrade of the software associated with the hardware component, or all terminals having a particular software component of a particular version number might need to perform an upgrade of the software component, etc.
In another embodiment, the interface node can receive and process reprogramming request messages from EIR terminals of the system. In one embodiment, a reprogramming request message can be provided by a status message. Responsively to processing a reprogramming request message, an interface node can build a reprogramming message for transmittal to the requesting EIR terminal. An interface node, in one embodiment can be configured so that the interface node in building reprogramming messages utilizes the information determined by querying the terminal status database. In another aspect, an interface node can build a reprogramming message for transmittal to one or more EIR terminals responsively to receiving user interface input. In another aspect, an interface node can build a reprogramming message for transmittal to one or more EIR terminals responsively to communications received from a remotely located resource network.
In addition to being in communication with a terminal status database, an interface node can be in communication with a terminal reprogramming database. The terminal reprogramming database can be provided at a location external to any EIR terminal. An interface node can utilize the information determined by querying the terminal reprogramming database in building reprogramming messages for transmittal to EIR terminals. An interface node can also be in communication with a file system that stores files for transmittal to EIR terminals. The terminal reprogramming database can contain a plurality of reprogramming records, each reprogramming record containing an EIR terminal identifying information and at least one of: a binary file, a data file, a script file, for use by the interface node in determining whether one or more identified files will be transmitted to a certain EIR terminal of the system. The terminal identifying information can be specified, e.g., by a terminal unique identifier, or by one or more <operand=value> conditions, wherein the operand can be, for example, terminal ID, terminal type, component type, component status, etc.
In one embodiment, the interface node can be in communication with a resource network, which in one embodiment can comprise one or more computers disposed at a location remote from the interface node. A “computer” herein shall refer to a programmable device for data processing, including a central processing unit (CPU), a memory, and at least one communication interface. A computer can be provided, e.g., by a personal computer (PC) running Linux operating system.
In one embodiment, the interface node can have a user interface allowing its operator to specify a Domain Name System (DNS) name or IP address of at least one computer on the resource network.
In one embodiment, the interface node can be configured to receive reprogramming information messages responsively to transmitting a request to a computer on the resource network. In one embodiment, a response to a reprogramming message request can include a redirection address. The interface node can be configured to receive reprogramming information messages responsively to transmitting a request to the redirection address.
In one embodiment, the interface node can communicate with the resource network using the Service Oriented Architecture Protocol (SOAP), Open Database Connectivity (ODBC) protocol, and/or a proprietary application level protocol.
In one embodiment, the resource network can initiate the communication with the interface node by transmitting a reprogramming information message to the interface node.
The interface node can be configured to receive and process reprogramming information messages from the resource network. The reprogramming information messages can take the form of reprogramming file identifier messages and reprogramming file messages. At least one computer on the resource network can have a user interface enabling an operator to cause the interface node to direct performance of reprogramming actions, e.g., by initiating transmittal of reprogramming information messages to an interface node, which can utilize information of a reprogramming information message to modify the reprogramming database. In one embodiment, the resource network can have an interface to one or more external systems (e.g., to an EIR terminal manufacturer's software version control system). The messages received by the resource network from the external systems can cause the interface node to direct performance of reprogramming actions, e.g., by initiating transmittal of reprogramming information messages by the resource network to an interface node.
In one embodiment, the interface node can be configured to allow a local administrator to specify a processing workflow to be executed upon a reprogramming message received from a resource network before performing a modification of the reprogramming database, e.g., in accordance with local business rules and procedures. For example, local business rules and procedures may require a quality control to be performed upon a software update received from the resource network before authorizing the modification of the terminal reprogramming database.
In another embodiment, the interface node can be configured so that the interface node when processing a reprogramming file message caches the received reprogramming file message for later use by EIR terminals of the system. The interface node can also be configured so that the interface node when receiving a reprogramming file identifier, messages the interface node, determines whether the reprogramming file corresponding to the identifier has been previously cached, and responsively transmits a file request message to the host processor if the file has not been previously cached. Caching of files at the interface node reduces the volume of traffic between a host processor and the interface node. The reduction in the traffic can be dramatic for data collection sites employing sizeable fleets, where it might be necessary to distribute the same file to a large number of terminals. In the absence of the caching feature by the interface node, the file would be transmitted, possibly from a remote location over a wide area network, to every terminal.
In one embodiment, the terminal reprogramming database can be modified by way of commands input by a user using a user interface of the interface node or by way of processing the mentioned reprogramming information messages received from a host processor.
In one embodiment, the interface node can be configured to transmit a reprogramming message to an EIR terminal responsively to an EIR terminal being physically docked in a docking station and can be further configured to be restricted from transmitting reprogramming messages to an EIR terminal unless the EIR terminal is physically docked to a docking station. The interface node can be further configured to transmit a reprogramming message to an EIR terminal only during a specified time frame, e.g., from 2 a.m. until 4 a.m. In such manner, an operator of an EIR terminal is protected from interruptions in the operation of an EIR terminal which otherwise might be brought about by the receipt of reprogramming messages.
Transmitting reprogramming messages responsively to a docking event has a further advantage of facilitating the scheduling of reprogramming messages transmittal to terminals, since all terminals are periodically docked to a docking station (e.g., for charging the battery at the end of every working shift). Thus, an operator or an automated procedure initiating a terminal reprogramming operation might be virtually certain that the reprogramming message would be transmitted to the terminal within a known period of time (e.g., at the end of the current work shift).
The system can further be configured so that an interface node receives a status update message from an EIR terminal responsively to an EIR terminal being physically docked in a docking station and can be further configured so that an interface node can be restricted from receiving status update messages unless the terminal is physically docked to a docking station.
An interface node can facilitate the management of a fleet of EIR terminals which includes tracking terminal status, responding to requests for reprogramming by transmitting terminal reprogramming messages, and performing terminal diagnostics. The EIR terminal interface node can be configured to communicate with a resource network and a fleet of EIR terminals. An EIR terminal can connect to an interface node either directly (e.g., over a wireless network interface) or via a docking station. The resource network can be configured to communicate with n>=1 interface nodes located at 0<m<=n local facilities, over a local area network (LAN) or a wide area network (WAN).
In one embodiment, an EIR terminal can be configured to communicate with an interface node via TCP/IP protocol. In one aspect, an EIR terminal can be configured to use a static IP address. In another aspect, an EIR terminal can be configured to request a dynamic IP address by broadcasting a Dynamic Host Configuration Protocol (DHCP) request. In another embodiment, an EIR terminal can be configured to communicate with an interface node via Point-to-Point Protocol (PPP).
An interface node can be configured to run a DHCP server software program to service DHCP requests initiated by EIR terminals for dynamic assignment of IP addresses.
An EIR terminal can be configured, upon successfully engaging with a docking station, to upload the data which needs to be stored externally (e.g., the data collected by the terminal during the last work shift), and to transmit a terminal status message reflecting the originating terminal software and hardware status, and/or status of at least some of the terminal's hardware components.
In one embodiment, an interface node can be configured to query a docked EIR terminal for the list of active communication interfaces. An EIR terminal can be configured to reply to the active interface list request with the list of its active interfaces. In one embodiment, the list of active interfaces can include their types and IP addresses. An interface node can be configured, upon receiving the list of a terminal's active interfaces, to select an interface not associated with the docking station to which the terminal is currently engaged, and to perform further communications with the terminal over the selected interface.
An interface node can be configured to perform EIR terminal management functions including: receiving, storing locally and/or forwarding to a host computer the data collected by the EIR terminal members of the managed fleet, transmitting to EIR terminals messages directing terminal reprogramming operations, including software upgrades (e.g., binary files for execution) and configuration updates (e.g., data files); caching reprogramming files received from the resource network. An interface node can be further configured to allow any higher priority operations (e.g., data upload by an EIR terminal) to complete before performing terminal reprogramming operations. An EIR terminal interface node can be further configured, upon completing any higher priority operations, to perform terminal diagnostics and/or testing.
An interface node can receive a reprogramming file message from a resource network at a time asynchronous relative to the time at which it transmits reprogramming files to an EIR terminal. Providing a data collection system in which reprogramming data is asynchronously transmitted to an EIR terminal provides a number of advantages. For example, an interface node can include a reprogramming file information viewer and a user can review reprogramming information prior to transmission of a reprogramming file to an EIR terminal and possibly manually modify characteristics of a reprogramming file prior to transmission of a reprogramming file. Also, when reprogramming files such as binary files and data files are stored in a file system in communication with an interface node, security checks can be run on the files prior to transmission to an EIR terminal to check for viruses, security breaches, and the like. Also, asynchronously transmitting reprogramming data from a host processor to an EIR terminal when combined with a caching of reprogramming files at an interface node reduces a volume of data traffic between a host processor and an interface node.
While systems, methods, and apparatuses described herein are useful when incorporated in a data collection system incorporating encoded information reading terminals, it will be understood that systems, methods, and apparatuses described herein can also be usefully incorporated in communications networks other than data collection systems that are devoid of EIR terminals.
a illustrates an embodiment of data collection system 1000 including an interface node 100. In one embodiment, the interface node 100 can be implemented as a computer comprising a CPU (not shown in
Referring again to
In one embodiment, as shown in
A block diagram of a generic encoded information reading terminal 110 is shown in
In one example, encoded information reading device 75 can be a barcode reading device, such as the IT4XXX/5XXX imaging module that has a decode out circuit of the type available from Hand Held Products, Inc. (Skaneateles Falls, N.Y.). The IT 4XXX/5XXX imaging module with a decode out circuit provides decoding of a plurality of different types of barcode symbols and other decodable symbols such as PDF 417, Micro PDF 417, Maxicode, Data Matrix, QR Code, Aztec, Aztec Mesa, Code 49, UCC Composite, Snowflake, Data Gliffs, Code 39, Code 128, Codabar, UPC, EAN, Interleave 205, RSS, Code 93, Codablock, BC412, Postnet, Planet Code, BPO Forcedate, Canadian Forcedate, Japanese Post, KIX (Dutch Post), OCR A, OCR B, and any combinations thereof. In another example, reading device 75 can be an RFID reading device, such as the Skytek Sky Module M1 reading device and Sky Module M8 reading device. In the case of a barcode reading device, reading device 75 can scan the contents of, for example, a barcode. In another example, reading device 75 can be a card reading device such as the Panasonic ZU-9A36CF4 integrated circuit smart card (IC CARD) reading device. In yet another example, encoded information reading device 75 can be any combination of barcode reading device, RFID reading device, and card reading device. Each EIR terminal of system 1000 can be incorporated in a hand held housing, examples of which are shown in
Block diagrams illustrating exemplary embodiments of interface node 100 and a resource network computer 140 are described in
In another embodiment (not shown in
Referring to further aspects of interface node 100, interface node 100 can also include a file system 2080, and can incorporate a number of databases including an EIR Terminal Status Database 1090 and Terminal Reprogramming Database 1094. An exemplary embodiment of the EIR terminal status database 1090 is shown in
A Terminal Reprogramming Database 1094, an example of which is shown in
In another aspect, a software process running on interface node 100 can query the tables of database 1094 for purposes of determining whether an identified file is to be transmitted to a particular terminal. System 1000 can be configured so that for every record in Scheduled Terminal Reprogramming Table 540, one or more conditions can be extracted from Reprogramming Conditions Table 550, with condition ID in the records extracted from Reprogramming Conditions Table 550 matching the condition ID in the record of Scheduled Terminal Reprogramming Table 540. If more than one condition is extracted from Reprogramming Conditions Table 550, the extracted conditions can be ordered according to the value of the sequence number column of Reprogramming Conditions Table 550, and joined together with the logical operations specified in the operation column of Reprogramming Conditions Table 550. System 1000 can be further configured so that for every terminal satisfying the one or more conditions extracted, a new record can be created in Pending Terminal Reprogramming Table 555. The newly created record can include a Terminal Identifier, Script File Identifier; Binary File Identifier, Data File Identifier, the Reprogramming Operation Priority, and the Reprogramming Operation Status.
The Reprogramming Operation Priority can be specified, e.g., on a 1 to 10 scale with 1 being the highest and 10 being the lowest priority.
The Reprogramming Operations Status can be set to “Scheduled” upon creating a new record. The Reprogramming Operation Status can then be changed to “Pending” upon transmitting a reprogramming message to the corresponding terminal. The Reprogramming Operation Status can be finally set to “Complete” upon receiving a terminal status message confirming the completion of the reprogramming operation.
For every record in table 555 with status different from “Complete”, interface node 100 can build a reprogramming message to a particular terminal identified by the Terminal ID.
Referring to resource network computer 140, resource network computer 140 can be provisioned in a manner similar to interface node 100. Referring to
In the embodiment shown, an EIR terminal 110a-110z can communicate with the EIR terminal interface node 100 either directly (e.g., via a wireless interface) or via a docking station 120a-120z to which the EIR terminal is currently engaged (physically docked). An EIR terminal 110a-110z can have a wireline (e.g., Ethernet, RS/232, etc.) or wireless (e.g., Bluetooth, IEEE 802.11x, infrared, etc.) connection to docking stations 120a-120z. A docking station can be a “dumb” docking station which is not capable of any processing of the contents of the messages it relays to and from the EIR terminal it is engaged to. A “dumb” docking station can include a microcontroller programmed to format data packets in accordance with a known protocol, e.g., RS232, ETHERNET. The functions of a “dumb” docking station can include charging of the EIR terminal's battery (not shown) and relaying data packets between the EIR terminal 110 and EIR terminal interface node 100. A “dumb” docking station can be characterized by a relatively low cost.
EIR terminal interface node 100 can be configured to perform EIR terminal management functions including: receiving storing locally and forwarding to a host computer the data collected by the EIR terminal members of the managed fleet, conditionally transmitting messages directing terminal reprogramming including software upgrades (e.g., executable files) and configuration updates (e.g., data files) to EIR terminals responsive to receiving an EIR terminal reprogramming request message, receiving updates from the resource network, caching update files received from the resource network, and maintaining a local copy of terminals status database.
a and 2b illustrate a flow diagram of operation of an EIR terminal interface node in an exemplary embodiment managing a fleet of EIR terminals.
Several important functions of the EIR terminal fleet management can be implemented as independently and simultaneously executable processing threads. However, a skilled artisan would appreciate the fact that other suitable implementations are possible, e.g., employing multiple processes rather than multiple threads in an operating system which does not support threads, or employing a single process architecture with or without using hardware and/or software interrupt servicing routines in an operating system which only provides for single process architecture, etc.
Each of
A skilled artisan would appreciate the fact that other processing threads performing auxiliary functions (e.g., processing user interface actions, managing the interface node outbound messages queue, etc.) may be necessary to fully implement the functionality of EIR terminal interface node.
a illustrates a flow diagram of a sample implementation of the execution thread responsible for processing the messages received by interface node from the EIR terminal members of the managed fleet. A new execution thread implementing the described algorithm can be initiated for every connection by an EIR terminal 110a-110z of
Upon being engaged with a docking station, an EIR terminal can transmit a terminal status message 2001 to EIR terminal interface node 100 of
At step 2010, EIR terminal interface node can read a message from one of EIR terminals 110a-110z of
At step 2012, EIR terminal interface node 100 can ascertain whether a terminal status message has been received. If yes, the processing continues at step 2014; otherwise, the method loops back to step 2010.
At step 2014, EIR terminal interface node 100 can update a local copy of a terminal status table with the EIR terminal status information, and can queue a terminal status message for transmittal to the resource network 150 of
Turning ahead to
At step 2016, EIR terminal interface node 100 can utilize the information determined by querying the Terminal Reprogramming Database 1094 to determine whether a docked EIR terminal should be reprogrammed responsively to its docking in a docking station. With further reference to
The Condition ID field can refer to terminal identifying condition which can be stored in Reprogramming Conditions Table 550. A terminal identifying condition can be specified, e.g., by one or more <operand=value> statements, wherein the operand can be, for example, terminal ID, terminal type, component type, component status, etc. If more than one <operand=value> condition is used to specify the terminal identifying information, then the sequential number of the condition can be stored in the sequence number column, and the conditions can be joined by AND or OR logical operations specified in the operation column, e.g., <component type=battery> AND <component status=1>.
A software process running on interface node 100 can query the tables of database 1094 for purposes of determining whether an identified file is to be transmitted to a particular terminal. System 1000 can be configured so that for every record in Scheduled Terminal Reprogramming Table 540, one or more conditions can be extracted from Reprogramming Conditions Table 550, with Condition ID in the records extracted from Table 550 matching the Condition ID in the record of Table 540. If more than one condition is extracted from Table 550, the extracted conditions can be ordered according to the value of the Sequence Number column of Table 550, and joined together with the logical operations specified in the Operation column of Table 550. System 1000 can be further configured so that for every terminal satisfying the one or more conditions extracted, a new record can be created in Pending Terminal Reprogramming Table 555. The newly created record can include a Terminal ID; Script File Name; Binary File Name; Data File Name; the Reprogramming Operation Priority; and the Reprogramming Operation Status.
The Reprogramming Operation Priority can be specified, e.g., on a 1 to 10 scale with 1 being the highest and 10 being the lowest priority.
The Reprogramming Operations Status can be set to “Scheduled” upon creating a new record. The Reprogramming Operation Status can then be changed to “Pending” upon transmitting a Reprogramming Message to the corresponding terminal. The Reprogramming Operation Status can be finally set to “Complete” upon receiving a Terminal Status Message confirming the completion of the Reprogramming Operation.
For every record in Table 555 with status different from “Complete”, interface node 100 can build a reprogramming message to a particular terminal identified by the Terminal ID.
Interface node 100 can be configured so that database 1094 can be modified by receipt of commands initiated by a user using a user interface of interface node 100. A user of interface node 100 using a user interface can enter commands causing a new row to be appended to table 540. In one embodiment, system 1000 can be configured so that if database 1090 has an entry corresponding to the just docked terminal 100 and the update status indicates that the reprogramming designated by that row has not been completed for that terminal, interface node 100 builds a reprogramming message for that particular terminal ID.
In one embodiment, EIR terminal interface node 100 can also utilize the information determined by querying the Terminal Status Database 1090 to determine whether a docked EIR terminal satisfies a terminal identifying condition specified by the Terminal Reprogramming Database 1094. With further reference to
Referring back to
The terminal reprogramming message 2009 can contain commands and/or data directing an EIR terminal to upgrade its software and/or update its configuration. Terminal Reprogramming Message 2009 can include the following information:
Upon processing a Terminal Reprogramming Message, an EIR terminal 110 can transmit to EIR terminal interface node 100 a new terminal status message which would be received in the message reading loop comprising steps 2010-2012 of the present method.
Referring again to system 1000, system 1000 can be configured so that either or both of resource network 150 and interface node 100 can be configured to include user interfaces enabling an administrator to specify reprogramming files such as binary files and data files for transmission to one or more EIR terminals 110. Data of a reprogramming database 1094 can be modified either by way of commands input by a user of an interface node 100 or by way of messages built at the resource network 150 by way of commands input by an operator at the resource network 150, or by a software program processing messages received from an external system.
A user interface for running at interface node 100 has been described in connection with
A user interface for running at the resource network 150 is shown and described at
b illustrates a flow diagram of a sample implementation of the execution thread responsible for processing reprogramming information messages received by EIR terminal interface node 100 from the resource network 150 of
The resource network 150 can have a user interface configured as described in connection with
To minimize the network traffic between the resource network and EIR terminal interface node, the resource network can be configured to transmit to interface node 100 terminal reprogramming information containing unique file names rather than the reprogramming files (e.g., binary files, script files, configuration data files) themselves. EIR terminal interface node 100 can be configured to cache all the terminal reprogramming files in the local file system, and only request a terminal reprogramming file to be transmitted by the resource network when the file can not be found in the local file system of EIR terminal interface node 100.
Reprogramming information messages that can be received by interface node 100 from resource network 150 can include reprogramming file identifier messages and reprogramming file messages. An interface node 100 can receive a reprogramming file identifier message, process the message to determine if the identified file or files have been previously cached and can conditionally request a file or files identified by a reprogramming file identifier message on the condition that interface node 100 determines that the file or files requested have not been previously cached.
Referring to
At step 2220, EIR terminal interface node 100 ascertains whether a reprogramming file identifier message has been received. If yes, the processing continues at step 2230; otherwise the method branches to step 2260.
A reprogramming file identifier message can include the following information:
At step 2230, EIR terminal interface node 100 modifies Terminal Reprogramming Database 1094 by appending to Table 540 data extracted from the reprogramming file identifier message.
At step 2240, EIR terminal interface node 100 ascertains whether all files specified in the reprogramming file identifier message exist in the local file system. If yes, the method loops back to step 2210; otherwise, the processing continues at step 2250.
At step 2250, EIR terminal interface node queues for transmission to resource network 150 a message requesting the files specified in the reprogramming file identifier message received at step 2220 and missing from the local file system. Then the method loops back to step 2210.
At step 2260, EIR terminal interface node ascertains whether a reprogramming file message has been received. If yes, the processing continues at step 2270; otherwise the method loops back to step 2210.
At step 2270, EIR terminal interface node stores the received one or more files in the local file system. The method loops back to step 2210.
In one embodiment, the resource network 150 can be configured to transmit a reprogramming file to EIR terminal interface node 100 responsive to receiving a reprogramming file request. In one embodiment, the reprogramming file request can be represented by a reprogramming request message.
In the embodiment shown in
The interface node can communicate with the resource network using the Service Oriented Architecture Protocol (SOAP), Open Database Connectivity (ODBC) protocol, and/or a proprietary application level protocol.
In another embodiment, the resource network 150 can initiate the communication with the interface node by transmitting one or more reprogramming information messages.
A skilled artisan would appreciate the fact that the functionality provided by the embodiment with the resource network initiating the communication can be implemented employing the request-response embodiment, where the interface node transmits the reprogramming file requests with a desired frequency. This can be useful, e.g., in a situation where a local network security policy prevents any external entity (including the resource network 150) from opening a Transmission Control Protocol (TCP) connection to the hosts on the local network (including the interface node).
Referring now to
At step 340, the resource network computer ascertains whether a reprogramming file request has been received. If yes, the processing continues at step 350; otherwise the method branches to step 360.
At step 350, the resource network computer queues for transmission to EIR terminal interface node a terminal reprogramming file message containing one or more files requested by EIR terminal interface node.
At step 360, the resource network computer ascertains whether a terminal status message has been received. If yes, the processing continues at step 370; otherwise, the method loops back to step 310.
At step 370, the resource network computer parses the incoming terminal status message and updates terminal configuration table of the EIR terminal fleet management database with the EIR terminal configuration information. Processing continues at step 380.
At step 380, the resource network computer builds queues for transmission of a terminal reprogramming message to EIR terminal interface node. The method loops back to step 310.
An EIR terminal can be configured, periodically at the expiration of a pre-set time-out, and/or every time an EIR terminal is powered up, or engaged with a docking station, to ascertain the connectivity to the EIR terminal interface node. An EIR terminal can be further configured, upon ascertaining that the connectivity to the EIR terminal interface node exists, to upload the data collected by the EIR terminal since the last data upload operation (e.g., during the last work shift). An EIR terminal can be further configured, upon completing the data upload operation, to transmit a terminal status message to the EIR terminal interface node. An EIR terminal can be further configured, responsive to receiving a terminal reprogram message, to perform the directed updates and transmit a terminal status message reflecting the changed status to EIR terminal interface node. An EIR terminal can also be configured to periodically (e.g., within the message reading loop) ascertain whether the terminal configuration and/or status has been changed and transmit a terminal status message every time a terminal configuration change has been detected. An interface node can be configured to transmit terminal reprogramming messages only to docked terminals.
Step 410 of testing a connection to EIR terminal interface node 100 of
At step 420, the EIR terminal 100 ascertains whether it has acquired a connection to EIR terminal interface node. If yes, the processing continues at step 450; otherwise, the method loops back to step 410.
At step 450, EIR terminal builds a terminal status message and transmits it to EIR terminal interface node. Processing continues at step 460.
At step 460, EIR terminal reads the incoming messages from EIR terminal interface node. Processing continues at step 470.
At step 470, the method ascertains whether a terminal reprogramming message has been received. If yes, the processing continues at step 480; otherwise, the method branches to step 490.
At step 480, EIR terminal parses the incoming terminal reprogramming message and performs the updates specified in the message. EIR terminal can execute the update script extracted from the message immediately, or schedule it for execution at the time specified in the reprogramming message or upon satisfying the condition specified within the message. The update script can include instructions resetting the EIR terminal upon completing the reprogramming operation. The method loops back to step 450.
At step 490, EIR terminal ascertains whether the terminal configuration has been changed since the last terminal status message was sent to EIR terminal interface node. If yes, the method loops back to step 450; otherwise, the method loops back to step 460.
Referring to Terminal Status Database shown in
Hardware Component Configuration Table 520 can contain a plurality of hardware component configuration records; each of those records can include the following fields: Component ID, Component Type, and Component Status.
Software Component Configuration Table 530 can contain a plurality of software component configuration records. Each of those records can include the following fields: Component ID, Component Name, Component Version, and Configuration Parameters.
Referring now to Terminal Reprogramming Database 1094 shown in
Scheduled Terminal Reprogramming Table 540 can contain a plurality of scheduled terminal reprogramming records containing an EIR terminal identifying information and at least one of: a Binary File, a Data File, a Script File. Each of the terminal reprogramming records can include the following fields: Condition ID, Script File Name, Binary File Name, Data File Name, and Reprogramming Operation Priority.
Script File Name is the name of a file in a file system local to or accessible by resource network 150. A script file can contain, e.g., a sequence of commands to be executed by the EIR terminal in order to perform the software upgrade or configuration update.
Binary File Name is the name of a file in a file system local to or accessible by resource network 150. A binary file can contain a software code to be executed by the EIR terminal.
Data File Name is the name of a file in a file system local to or accessible by resource network 150. A data file can contain software configuration parameters. A data file can be, e.g., an XML file, or a text file containing a list of <name=value> configuration parameter pairs.
Reprogramming Conditions Table 550 can contain a plurality of reprogramming condition records containing terminal identifying information for use by interface node 100 in determining whether a reprogramming message is to be built for a particular EIR terminal. Such terminal identifying information can be specified, e.g., by one or more <operand=value> conditions wherein the operand can be for example, terminal ID, terminal type, component type, component status, etc. If more than one <operand=value> condition is used to specify the terminal identifying information, then the sequential number of the condition can be stored in the sequence number column, and the conditions can be joined by AND or OR logical operations specified in the operation column, e.g., <component type=battery> AND <component status=1>.
Pending Terminal Reprogramming Table 555 can contain a plurality of pending terminal reprogramming records. Each of those records can include the following fields: Terminal ID, Script File Name, Binary File Name, Data File Name, Reprogramming Operation Priority, and Reprogramming Operation Status.
A software process running on interface node 100 can be configured so that for every record in Scheduled Terminal Reprogramming Table 540, one or more conditions can be extracted from Reprogramming Conditions Table 550, with the Condition ID in the records extracted from Reprogramming Conditions Table 550 matching the Condition ID in the records of Scheduled Terminal Reprogramming Table 540. If more than one condition is extracted from Reprogramming Conditions Table 550, the extracted conditions can be ordered according to the value of the Sequence Number column of Reprogramming Conditions Table 550, and joined together with the logical operations specified in the Operation column of Reprogramming Conditions Table 550. The software process running on interface node 100 can be further configured so that for every terminal satisfying the one or more conditions extracted, a new record can be created in Pending Terminal Reprogramming Table 555.
The reprogramming operations status can be set to “Scheduled” upon creating a new record. The reprogramming operation status can then be changed to “Pending” upon transmitting a reprogramming message to the corresponding terminal. The reprogramming operation status can be finally set to “Complete” upon receiving a terminal status message confirming the completion of the reprogramming operation.
For every record in Pending Terminal Reprogramming Table 555 with status different from “Complete”, interface node 100 can build a reprogramming message to a particular terminal identified by the terminal ID.
A small sample of systems methods and apparatus that are described herein is as follows:
A1. An encoded information reading (EIR) terminal interface node for use in a data collection system having a plurality of EIR terminals, each EIR terminal of said plurality of EIR terminals having an EIR device selected from the group consisting of a barcode reading device, an RFID reading device, and a card reading device, said EIR interface node including one or more computers, each computer comprising a central processing unit, a memory, and at least one communication interface;
wherein said EIR terminal interface node is communicatively coupled to a plurality of EIR terminals, each EIR terminal of said plurality of EIR terminals being engageable to a docking station;
wherein said EIR terminal interface node is communicatively coupled to a reprogramming database, said reprogramming database containing a plurality of reprogramming records, each reprogramming record of said plurality of reprogramming records containing EIR terminal identifying information and at least one of: a binary file identifier, a data file identifier, a script file identifier;
wherein said EIR terminal interface node builds and transmits a reprogramming message to one or more EIR terminals, said reprogramming message including at least one of: a binary file, a data file, a script file;
wherein said EIR terminal interface node utilizes information determined by querying said reprogramming database when building said reprogramming message;
wherein said binary file contains a software code to be executed by an EIR terminal;
wherein said data file contains EIR terminal software configuration parameters; and
wherein said script file contains a sequence of commands to be executed by an EIR terminal.
A2. The EIR terminal interface node of claim A1, wherein said EIR terminal interface node is communicatively coupled to a file system; wherein said reprogramming database stores a plurality of reprogramming file identifiers identifying reprogramming files stored in said file system.
A3. The EIR terminal interface node of claim A1, wherein said EIR terminal interface node is configured to run a Dynamic Host Configuration Protocol (DHCP) server software program to service DHCP requests for dynamic assignment of IP addresses, said requests being initiated by one or more EIR terminals of said plurality of EIR terminals.
A4. The EIR terminal interface node of claim A1, wherein said EIR terminal interface node is further configured to query a docked EIR terminal for a list of active communication interfaces;
wherein at least one EIR terminal of said plurality of EIR terminals is configured to reply to said active interface list request with a list of its active interfaces, said list of active interfaces including interface types and IP addresses; and
wherein said EIR terminal interface node is further configured, upon receiving said list of an EIR terminal's active interfaces, to perform further communication with said terminal over a communication interface selected from said list of active interfaces, said communication interface not associated with a docking station to which said terminal is currently engaged.
A5. The EIR terminal interface node of claim A1, further including a user interface enabling a user of said EIR terminal interface node to modify said reprogramming database; wherein said EIR terminal interface node builds said reprogramming message responsively to a user action via said user interface.
A6. The EIR terminal interface node of claim A1, wherein said EIR terminal interface node builds said reprogramming message responsively to receiving a reprogramming request from a certain EIR terminal of said plurality of terminals.
A7. The EIR terminal interface node of claim A1, wherein said EIR terminal interface node is configured so that said EIR terminal interface node transmits said reprogramming message to a certain EIR terminal responsively to said certain EIR terminal being docked in a docking station.
A8. The EIR terminal interface node of claim A1, wherein said EIR terminal interface node is configured so that said EIR terminal interface node transmits said reprogramming message to a certain EIR terminal only during a specified time frame.
A9. The EIR terminal interface node of claim A1, wherein said terminal identifying information is selected from the group consisting of a terminal unique identifier and a reprogramming condition.
A10. The EIR terminal interface node of claim A1, wherein said reprogramming message further specifies one of time of executing said script file condition to be satisfied to trigger the executing of said script file.
B1. An encoded information reading (EIR) terminal interface node for use in a data collection system having a plurality of EIR terminals, each EIR terminal of said plurality of EIR terminals having an EIR device selected from the group consisting of a barcode reading device, an RFID reading device, and a card reading device, said EIR interface node including one or more computers, each computer comprising a central processing unit, a memory, and at least one communication interface;
wherein said EIR terminal interface node is communicatively coupled to a plurality of EIR terminals, each EIR terminal of said plurality of EIR terminals being engageable to a docking station;
wherein said EIR terminal interface node is communicatively coupled to a reprogramming database, said reprogramming database containing a plurality of reprogramming records, each reprogramming record of said plurality of reprogramming records containing an EIR terminal identifying information and at least one of: a binary file identifier, a data file identifier, a script file identifier;
wherein said EIR terminal interface node builds and transmits a reprogramming message to one or more EIR terminals, said reprogramming message including at least one of: a binary file, a data file, a script file;
wherein said EIR terminal interface node utilizes information determined by querying said reprogramming database when building said reprogramming message;
wherein said binary file contains software code to be executed by an EIR terminal;
wherein said data file contains EIR terminal software configuration parameters;
wherein said script file contains a sequence of commands to be executed by an EIR terminal;
wherein said EIR terminal interface node further includes a user interface enabling a user of said EIR terminal interface node to modify said reprogramming database; and
wherein said EIR terminal interface node is further configured so that said EIR terminal interface node modifies said reprogramming database responsively to receiving a reprogramming information message from a resource network.
B2. The EIR terminal interface node of claim B1, wherein said EIR terminal interface node is communicatively coupled to a file system; wherein said reprogramming database stores a plurality of reprogramming file identifiers identifying reprogramming files stored in said file system.
B3. The EIR terminal interface node of claim B1, wherein said EIR terminal interface node further includes a user interface enabling a user of said EIR terminal interface node to specify one of: Domain Name System (DNS) name of at least one computer on said resource network, IP address of at least one computer on said resource network.
B4. The EIR terminal interface node of claim B1, wherein said EIR terminal interface node communicates with said resource network using one of: Service Oriented Architecture Protocol (SOAP), Open Database Connectivity (ODBC) protocol, a proprietary application level protocol.
B5. The EIR terminal interface node of claim B1, wherein said EIR terminal interface node is configured to receive one or more said reprogramming information messages from said resource network responsively to transmitting a request to said resource network.
B6. The EIR terminal interface node of claim B1, wherein said EIR terminal interface node is configured to receive one or more said reprogramming information messages from said resource network responsively to transmitting a terminal status message to said resource network.
B7. The EIR terminal interface node of claim B1, wherein said EIR terminal interface node is configured, responsively to transmitting a request to a computer on said resource network, to receive a re-direction response including a re-direction address; and
wherein said EIR terminal interface node is further configured to receive said reprogramming information message responsively to transmitting request to said re-direction address.
B8. The EIR terminal interface node of claim B1, wherein said EIR terminal interface node is configured to allow a local administrator to specify a processing workflow to be executed upon a reprogramming message received from said resource network before performing a modification of said reprogramming database.
C1. An encoded information reading (EIR) terminal interface node for use in a data collection system having a plurality of EIR terminals, each EIR terminal of said plurality of EIR terminals having an EIR device selected from the group consisting of a barcode reading device, an RFID reading device, and a card reading device, said EIR interface node including one or more computers, each computer comprising a central processing unit a memory, and at least one communication interface;
wherein said EIR terminal interface node is communicatively coupled to a plurality of EIR terminals, each EIR terminal of said plurality of EIR terminals being engageable to a docking station;
wherein said EIR terminal interface node is communicatively coupled to a reprogramming database, said reprogramming database containing a plurality of reprogramming records, each reprogramming record of said plurality of reprogramming records containing an EIR terminal identifying information and at least one of: a binary file identifier, a data file identifier, a script file identifier;
wherein said EIR terminal interface node is communicatively coupled to a terminal status database, said terminal status database containing a plurality of terminal status records;
wherein said EIR terminal interface node builds and transmits a reprogramming message to one or more EIR terminals, said reprogramming message including at least one of: a binary file, a data file, a script file;
wherein said EIR terminal interface node utilizes information determined by querying said reprogramming database and said terminal status database when building said reprogramming message;
wherein said binary file contains software code to be executed by an EIR terminal;
wherein said data file contains EIR terminal software configuration parameters; and
wherein said script file contains a sequence of commands to be executed by an EIR terminal.
C2. The EIR terminal interface node of claim C1, wherein said EIR terminal interface node is communicatively coupled to a file system; wherein said reprogramming database stores a plurality of reprogramming file identifiers identifying reprogramming files stored in said file system.
C3. The EIR terminal interface node of claim C1, further including a user interface enabling a user of said EIR terminal interface node to modify said reprogramming database; wherein said EIR terminal interface node builds said reprogramming message responsively to a user action via said user interface.
D1. An encoded information reading (EIR) terminal interface node for use in a data collection system having a plurality of EIR terminals, each EIR terminal of said plurality of EIR terminals having an EIR device selected from the group consisting of a barcode reading device, an RFID reading device, and a card reading device, said EIR interface node including one or more computers, each computer comprising a central processing unit, a memory, and at least one communication interface;
wherein said EIR terminal interface node is communicatively coupled to a plurality of EIR terminals, each EIR terminal of said plurality of EIR terminals being engageable to a docking station;
wherein said EIR terminal interface node builds and transmits a reprogramming message to one or more EIR terminals, said reprogramming message including at least one reprogramming file;
wherein said EIR terminal interface node is further configured to receive a reprogramming information message from a resource network, said reprogramming information message containing identifiers of one or more reprogramming files;
wherein said EIR terminal interface node is further configured to request the transmission by a resource network of one or more reprogramming files identified in said reprogramming information message responsively to a determination that said one or more reprogramming files have not been previously received and stored by said EIR terminal interface node.
D2. The EIR terminal interface node of claim D1, wherein said EIR terminal interface node is configured to receive one or more said reprogramming information messages from said resource network responsively to transmitting a request to said resource network.
D3. The EIR terminal interface node of claim D1, wherein said EIR terminal interface node is configured to receive one or more said reprogramming information messages from said resource network responsively to transmitting a terminal status message to said resource network.
D4. The EIR terminal interface node of claim D1, wherein said EIR terminal interface node is configured, responsively to transmitting a request to a computer on said resource network, to receive a re-direction response including a re-direction address; wherein said EIR terminal interface node is further configured to receive said reprogramming information message responsively to transmitting request to said re-direction address.
E1. An encoded information reading (EIR) terminal interface node for use in a data collection system having a plurality of EIR terminals, each EIR terminal of said plurality of EIR terminals having an EIR device selected from the group consisting of a barcode reading device, an RFID reading device, and a card reading device, said EIR interface node including one or more computers, each computer comprising a central processing unit, a memory, and at least one communication interface;
wherein said EIR terminal interface node is communicatively coupled to a plurality of EIR terminals, each EIR terminal of said plurality of EIR terminals being engageable to a docking station;
wherein said EIR terminal interface node is communicatively coupled to a reprogramming database, said reprogramming database containing a plurality of reprogramming records, each reprogramming record of said plurality of reprogramming records containing an EIR terminal identifying information and at least one reprogramming file identifier;
wherein said EIR terminal interface node builds and transmits a reprogramming message to one or more EIR terminals, said reprogramming message including at least one reprogramming file;
wherein said EIR terminal interface node further includes a user interface enabling a user of said EIR terminal interface node to modify said reprogramming database;
wherein said EIR terminal interface node is configured so that said EIR interface node can transmit one or more reprogramming files to a certain one of said plurality of EIR terminals responsively to a received reprogramming request from said certain one of said EIR terminals;
wherein said EIR terminal interface is configured to monitor a docked or undocked status of each of said plurality of EIR terminals; and
wherein said EIR terminal status is configured to that said EIR interface node is restricted from transmitting said reprogramming files to a certain one of said EIR terminals unless said EIR terminal is determined to be docked in one of said docking stations.
F1. A method for reprogramming a portable encoded information reading (EIR) terminal operating within a fleet of encoded information reading terminals, said method comprising the steps of:
providing at a local facility at a location external to said portable EIR terminal a reprogramming database including information respecting one or more reprogramming files, said one or more files intended for transmittal to one or more EIR terminals, the providing step including the step of providing said reprogramming database so that said reprogramming database can be updated responsively to receiving a reprogramming information message from a location remote from said local facility;
further providing at said local facility at a location external to said portable EIR terminal a terminal status database for storing information respecting a condition status of terminals of said fleet of terminals, the further providing step including the step of providing the terminal status database so that said terminal status database can be modified responsively to status messages being received from said terminals of said fleet of encoded information reading terminals;
receiving a reprogramming request from said encoded information reading terminal;
querying said programming database and said terminal status database responsively to said receiving of said reprogramming request;
utilizing information determined by said querying of said programming database and said terminal status database to build a reprogramming message for transmitting to said encoded information reading terminal; and
transmitting to said encoded information reading terminal said reprogramming message.
While the present invention has been particularly shown and described with reference to certain exemplary embodiments, it will be understood by one skilled in the art that various changes in detail may be affected therein without departing from the spirit and scope of the invention as defined by claims that can be supported by the written description and drawings. Further, where exemplary embodiments are described with reference to a certain number of elements it will be understood that the exemplary embodiments can be practiced utilizing less than the certain number of elements.
This application is a continuation of U.S. patent application Ser. No. 13/663,060 filed Oct. 29, 2012, entitled “Data Collection System Having EIR Terminal Interface Node,” which is a divisional of U.S. patent application Ser. No. 13/233,598, filed Sep. 15, 2011, entitled “Data Collection System Having EIR Terminal Interface Node,” which is a divisional of U.S. patent application Ser. No. 12/979,147, filed Dec. 27, 2010, (now U.S. Pat. No. 8,025,233) entitled “Data Collection System Having EIR Terminal,” which is a divisional of U.S. patent application Ser. No. 11/893,603, filed Aug. 17, 2007, (now U.S. Pat. No. 7,857,222). All of the above applications are expressly incorporated herein by reference.
Number | Name | Date | Kind |
---|---|---|---|
5109486 | Seymour | Apr 1992 | A |
5261044 | Dev et al. | Nov 1993 | A |
5402316 | Volz et al. | Mar 1995 | A |
5463742 | Kobayashi | Oct 1995 | A |
5504921 | Dev et al. | Apr 1996 | A |
5546145 | Bernardi et al. | Aug 1996 | A |
5552959 | Penniman et al. | Sep 1996 | A |
5579001 | Dempsey et al. | Nov 1996 | A |
5579529 | Terrell et al. | Nov 1996 | A |
5579775 | Dempsey et al. | Dec 1996 | A |
5587560 | Crooks et al. | Dec 1996 | A |
5615625 | Cassidy et al. | Apr 1997 | A |
5640953 | Bishop et al. | Jun 1997 | A |
5655081 | Bonnell et al. | Aug 1997 | A |
5687734 | Dempsey et al. | Nov 1997 | A |
5724509 | Starkweather et al. | Mar 1998 | A |
5752917 | Fuchs | May 1998 | A |
5774793 | Cooper et al. | Jun 1998 | A |
5793967 | Simciak et al. | Aug 1998 | A |
5798951 | Cho et al. | Aug 1998 | A |
5805442 | Crater et al. | Sep 1998 | A |
5815735 | Baker | Sep 1998 | A |
5819110 | Motoyama | Oct 1998 | A |
5825617 | Kochis et al. | Oct 1998 | A |
5835733 | Walsh et al. | Nov 1998 | A |
5848253 | Walsh et al. | Dec 1998 | A |
5862349 | Cho et al. | Jan 1999 | A |
5867714 | Todd et al. | Feb 1999 | A |
5875312 | Walsh et al. | Feb 1999 | A |
5878256 | Bealkowski et al. | Mar 1999 | A |
5889964 | Cho et al. | Mar 1999 | A |
5921459 | Heraly et al. | Jul 1999 | A |
5931909 | Taylor | Aug 1999 | A |
5935244 | Swamy et al. | Aug 1999 | A |
5941965 | Moroz et al. | Aug 1999 | A |
5961337 | Kordes | Oct 1999 | A |
5978591 | Bartholomew et al. | Nov 1999 | A |
6032202 | Lea et al. | Feb 2000 | A |
6037788 | Krajec et al. | Mar 2000 | A |
6049454 | Howell et al. | Apr 2000 | A |
6070012 | Eitner et al. | May 2000 | A |
6085244 | Wookey | Jul 2000 | A |
6091602 | Helot | Jul 2000 | A |
6098097 | Dean et al. | Aug 2000 | A |
6108717 | Kimura et al. | Aug 2000 | A |
6109039 | Hougham et al. | Aug 2000 | A |
6142593 | Kim et al. | Nov 2000 | A |
6151643 | Cheng et al. | Nov 2000 | A |
6158430 | Pfeiffer et al. | Dec 2000 | A |
6160719 | May et al. | Dec 2000 | A |
6161133 | Kikinis | Dec 2000 | A |
6171559 | Sanders et al. | Jan 2001 | B1 |
6188572 | Liao et al. | Feb 2001 | B1 |
6195265 | Choi et al. | Feb 2001 | B1 |
6199108 | Casey et al. | Mar 2001 | B1 |
6202209 | Bartholomew et al. | Mar 2001 | B1 |
6226739 | Eagle | May 2001 | B1 |
6240297 | Jadoul et al. | May 2001 | B1 |
6247074 | Shin et al. | Jun 2001 | B1 |
6256691 | Moroz et al. | Jul 2001 | B1 |
6267475 | Lee et al. | Jul 2001 | B1 |
6279059 | Ludtke et al. | Aug 2001 | B1 |
6279154 | Davis | Aug 2001 | B1 |
6285911 | Watts, Jr. et al. | Sep 2001 | B1 |
6297963 | Fogle | Oct 2001 | B1 |
6301106 | Helot et al. | Oct 2001 | B1 |
6311321 | Agnihotri et al. | Oct 2001 | B1 |
6324692 | Fiske | Nov 2001 | B1 |
6330597 | Collin et al. | Dec 2001 | B2 |
6341274 | Leon | Jan 2002 | B1 |
6341320 | Watts, Jr. et al. | Jan 2002 | B1 |
6360362 | Fichtner et al. | Mar 2002 | B1 |
6378128 | Edelstein et al. | Apr 2002 | B1 |
6407335 | Franklin-Lees et al. | Jun 2002 | B1 |
6407915 | Derocher et al. | Jun 2002 | B1 |
6425126 | Branson et al. | Jul 2002 | B1 |
6442639 | McElhattan et al. | Aug 2002 | B1 |
6452325 | Dupont | Sep 2002 | B1 |
6457076 | Cheng et al. | Sep 2002 | B1 |
6461181 | Goh et al. | Oct 2002 | B1 |
6467088 | alSafadi et al. | Oct 2002 | B1 |
6477588 | Yerazunis et al. | Nov 2002 | B1 |
6484315 | Ziese | Nov 2002 | B1 |
6489932 | Chitturi et al. | Dec 2002 | B1 |
6505121 | Russell | Jan 2003 | B1 |
6506009 | Nulman et al. | Jan 2003 | B1 |
6511031 | Lin | Jan 2003 | B2 |
6519143 | Goko et al. | Feb 2003 | B1 |
6539358 | Coon et al. | Mar 2003 | B1 |
6542943 | Cheng et al. | Apr 2003 | B2 |
6558049 | Shin | May 2003 | B1 |
6560643 | Shepherd et al. | May 2003 | B1 |
6584336 | Ali et al. | Jun 2003 | B1 |
6584499 | Jantz et al. | Jun 2003 | B1 |
6587874 | Golla et al. | Jul 2003 | B1 |
6593528 | Franklin-Lees et al. | Jul 2003 | B2 |
6594534 | Crowell | Jul 2003 | B1 |
6606678 | Nakamura et al. | Aug 2003 | B1 |
6614979 | Bourdeau et al. | Sep 2003 | B2 |
6615405 | Goldman et al. | Sep 2003 | B1 |
6628517 | Helot et al. | Sep 2003 | B1 |
6633482 | Rode | Oct 2003 | B2 |
6658659 | Hiller et al. | Dec 2003 | B2 |
6668296 | Dougherty et al. | Dec 2003 | B1 |
6683786 | Yin et al. | Jan 2004 | B2 |
6684241 | Sandick et al. | Jan 2004 | B1 |
6697032 | Chitturi et al. | Feb 2004 | B2 |
6722192 | Benedict et al. | Apr 2004 | B2 |
6725260 | Philyaw | Apr 2004 | B1 |
6725281 | Zintel et al. | Apr 2004 | B1 |
6728956 | Ono | Apr 2004 | B2 |
6742025 | Jennery et al. | May 2004 | B2 |
6751681 | Torli et al. | Jun 2004 | B2 |
6754723 | Kato et al. | Jun 2004 | B2 |
6760761 | Sciacca | Jul 2004 | B1 |
6763403 | Cheng et al. | Jul 2004 | B2 |
6766175 | Uchiyama | Jul 2004 | B2 |
6766956 | Boylan, III et al. | Jul 2004 | B1 |
6770028 | Ali et al. | Aug 2004 | B1 |
6772264 | Dayan et al. | Aug 2004 | B1 |
6778824 | Wonak et al. | Aug 2004 | B2 |
6779068 | Kim et al. | Aug 2004 | B2 |
6784855 | Matthews et al. | Aug 2004 | B2 |
6806813 | Cheng et al. | Oct 2004 | B1 |
6832082 | Ramaswamy et al. | Dec 2004 | B1 |
6832373 | O'Neill | Dec 2004 | B2 |
6833787 | Levi | Dec 2004 | B1 |
6833989 | Helot et al. | Dec 2004 | B2 |
6850158 | Williams | Feb 2005 | B1 |
6854112 | Crespo et al. | Feb 2005 | B2 |
6857013 | Ramberg et al. | Feb 2005 | B2 |
6863210 | Becker et al. | Mar 2005 | B2 |
6864891 | Myers | Mar 2005 | B2 |
6868468 | Boz et al. | Mar 2005 | B2 |
6886104 | McClurg et al. | Apr 2005 | B1 |
6889263 | Motoyama | May 2005 | B2 |
6895261 | Palamides | May 2005 | B1 |
6895445 | Ying et al. | May 2005 | B2 |
6898080 | Yin et al. | May 2005 | B2 |
6904457 | Goodman | Jun 2005 | B2 |
6907603 | Scott | Jun 2005 | B2 |
6915514 | Machida et al. | Jul 2005 | B1 |
6920631 | Delo | Jul 2005 | B2 |
6928493 | Motoyama | Aug 2005 | B2 |
6944854 | Kehne et al. | Sep 2005 | B2 |
6944858 | Luu | Sep 2005 | B2 |
6954142 | Lieberman et al. | Oct 2005 | B2 |
6955517 | Nulman et al. | Oct 2005 | B2 |
6959172 | Becker et al. | Oct 2005 | B2 |
6961586 | Barbosa et al. | Nov 2005 | B2 |
6966058 | Earl et al. | Nov 2005 | B2 |
6968550 | Branson et al. | Nov 2005 | B2 |
6970952 | Motoyama | Nov 2005 | B2 |
6973799 | Kuehl et al. | Dec 2005 | B2 |
6976062 | Denby et al. | Dec 2005 | B1 |
6981086 | Wetzel et al. | Dec 2005 | B2 |
6987988 | Uchiyama | Jan 2006 | B2 |
6990549 | Main et al. | Jan 2006 | B2 |
6990660 | Moshir et al. | Jan 2006 | B2 |
6993615 | Falcon | Jan 2006 | B2 |
6993760 | Peev et al. | Jan 2006 | B2 |
6996634 | Herrod et al. | Feb 2006 | B1 |
6999898 | King et al. | Feb 2006 | B2 |
7000228 | Mortazavi | Feb 2006 | B2 |
7003560 | Mullen et al. | Feb 2006 | B1 |
7013331 | Das | Mar 2006 | B2 |
7020571 | Lee et al. | Mar 2006 | B2 |
7024189 | Wonak et al. | Apr 2006 | B2 |
7039688 | Matsuda et al. | May 2006 | B2 |
7043537 | Pratt | May 2006 | B1 |
7054423 | Nebiker et al. | May 2006 | B2 |
7054977 | Kadambi et al. | May 2006 | B2 |
7069006 | Wonak | Jun 2006 | B2 |
7072675 | Kanakubo | Jul 2006 | B1 |
7076536 | Chiloyan et al. | Jul 2006 | B2 |
7080371 | Arnaiz et al. | Jul 2006 | B1 |
7085805 | Ruberg et al. | Aug 2006 | B1 |
7085824 | Forth et al. | Aug 2006 | B2 |
7086049 | Goodman | Aug 2006 | B2 |
7089551 | Fordemwalt et al. | Aug 2006 | B2 |
7099152 | Gasbarro et al. | Aug 2006 | B2 |
7100271 | Baulier et al. | Sep 2006 | B2 |
7107380 | Mohan | Sep 2006 | B1 |
7111055 | Falkner | Sep 2006 | B2 |
7114021 | Seshadri | Sep 2006 | B2 |
7117239 | Hansen | Oct 2006 | B1 |
7117286 | Falcon | Oct 2006 | B2 |
7130896 | Engel et al. | Oct 2006 | B2 |
7133939 | Desai et al. | Nov 2006 | B1 |
7149792 | Hansen et al. | Dec 2006 | B1 |
7159016 | Baker | Jan 2007 | B2 |
7185014 | Hansen | Feb 2007 | B1 |
7188160 | Champagne et al. | Mar 2007 | B2 |
7188171 | Srinivasan et al. | Mar 2007 | B2 |
7191435 | Lau et al. | Mar 2007 | B2 |
7194526 | Kanemitsu et al. | Mar 2007 | B2 |
7216343 | Das et al. | May 2007 | B2 |
7272711 | Suda et al. | Sep 2007 | B2 |
7289995 | Motoyama et al. | Oct 2007 | B2 |
7290258 | Steeb et al. | Oct 2007 | B2 |
7316013 | Kawano et al. | Jan 2008 | B2 |
7581029 | Dubal et al. | Aug 2009 | B2 |
7857222 | Kosecki et al. | Dec 2010 | B2 |
7962586 | Dubal et al. | Jun 2011 | B2 |
8025233 | Kosecki et al. | Sep 2011 | B2 |
8297508 | Kosecki et al. | Oct 2012 | B2 |
8556174 | Kosecki et al. | Oct 2013 | B2 |
20010042112 | Slivka et al. | Nov 2001 | A1 |
20020073304 | Marsh et al. | Jun 2002 | A1 |
20020083160 | Middleton | Jun 2002 | A1 |
20020083432 | Souisse et al. | Jun 2002 | A1 |
20020086703 | Dimenstein et al. | Jul 2002 | A1 |
20020087392 | Stevens | Jul 2002 | A1 |
20020087668 | San Martin et al. | Jul 2002 | A1 |
20020087960 | Hisatake | Jul 2002 | A1 |
20020092008 | Kehne et al. | Jul 2002 | A1 |
20020092013 | Delo | Jul 2002 | A1 |
20020094208 | Palumbo | Jul 2002 | A1 |
20020095484 | Pagani et al. | Jul 2002 | A1 |
20020100036 | Moshir et al. | Jul 2002 | A1 |
20020109665 | Matthews et al. | Aug 2002 | A1 |
20020129350 | Wang et al. | Sep 2002 | A1 |
20020129355 | Velten et al. | Sep 2002 | A1 |
20020147974 | Wookey | Oct 2002 | A1 |
20020184349 | Manukyan | Dec 2002 | A1 |
20020184350 | Chen | Dec 2002 | A1 |
20020187024 | Nulman | Dec 2002 | A1 |
20020191940 | Bourdeau | Dec 2002 | A1 |
20020198969 | Engel et al. | Dec 2002 | A1 |
20030018694 | Chen et al. | Jan 2003 | A1 |
20030031539 | Nulman et al. | Feb 2003 | A1 |
20030046675 | Cheng et al. | Mar 2003 | A1 |
20030051235 | Simpson | Mar 2003 | A1 |
20030059022 | Nebiker et al. | Mar 2003 | A1 |
20030084436 | Berger et al. | May 2003 | A1 |
20030088651 | Wilson | May 2003 | A1 |
20030097427 | Parry | May 2003 | A1 |
20030111245 | Haggerty | Jun 2003 | A1 |
20030154471 | Teachman et al. | Aug 2003 | A1 |
20030188306 | Harris et al. | Oct 2003 | A1 |
20030198015 | Vogt | Oct 2003 | A1 |
20030217357 | Parry | Nov 2003 | A1 |
20030217358 | Thurston et al. | Nov 2003 | A1 |
20030221190 | Deshpande et al. | Nov 2003 | A1 |
20030225939 | Ying et al. | Dec 2003 | A1 |
20040002943 | Merrill et al. | Jan 2004 | A1 |
20040015949 | Taylor | Jan 2004 | A1 |
20040020974 | Becker et al. | Feb 2004 | A1 |
20040024933 | Billington et al. | Feb 2004 | A1 |
20040049233 | Edwards | Mar 2004 | A1 |
20040050247 | Topping | Mar 2004 | A1 |
20040083471 | Nam et al. | Apr 2004 | A1 |
20040098571 | Falcon | May 2004 | A1 |
20040103172 | Chen et al. | May 2004 | A1 |
20040123281 | Olrik et al. | Jun 2004 | A1 |
20040127210 | Shostak | Jul 2004 | A1 |
20040139757 | Kuehl et al. | Jul 2004 | A1 |
20040143032 | Auschra et al. | Jul 2004 | A1 |
20040148600 | Hoshino | Jul 2004 | A1 |
20040154014 | Bunger | Aug 2004 | A1 |
20040168167 | Ono | Aug 2004 | A1 |
20040177380 | Hamel et al. | Sep 2004 | A1 |
20040181593 | Kanojia et al. | Sep 2004 | A1 |
20040192329 | Barbosa et al. | Sep 2004 | A1 |
20040199615 | Philyaw | Oct 2004 | A1 |
20040205709 | Hiltgen et al. | Oct 2004 | A1 |
20040210897 | Brockway et al. | Oct 2004 | A1 |
20040212822 | Schinner | Oct 2004 | A1 |
20040216099 | Okita et al. | Oct 2004 | A1 |
20040235532 | Matthews et al. | Nov 2004 | A1 |
20040243991 | Gustafson et al. | Dec 2004 | A1 |
20040243995 | Sheehy | Dec 2004 | A1 |
20040255023 | Motoyama et al. | Dec 2004 | A1 |
20040268340 | Steeb et al. | Dec 2004 | A1 |
20050044544 | Slivka et al. | Feb 2005 | A1 |
20050050538 | Kawamata et al. | Mar 2005 | A1 |
20050052156 | Liebenow | Mar 2005 | A1 |
20050060862 | Baulier | Mar 2005 | A1 |
20050065822 | Ying et al. | Mar 2005 | A1 |
20050086328 | Landram et al. | Apr 2005 | A1 |
20050093821 | Massie et al. | May 2005 | A1 |
20050097543 | Hirayama | May 2005 | A1 |
20050097544 | Kim | May 2005 | A1 |
20050108700 | Chen et al. | May 2005 | A1 |
20050132348 | Meulemans et al. | Jun 2005 | A1 |
20050132349 | Roberts et al. | Jun 2005 | A1 |
20050132350 | Markley et al. | Jun 2005 | A1 |
20050132351 | Randall et al. | Jun 2005 | A1 |
20050144612 | Wang et al. | Jun 2005 | A1 |
20050159847 | Shah et al. | Jul 2005 | A1 |
20050204353 | Ji | Sep 2005 | A1 |
20050210458 | Moriyama et al. | Sep 2005 | A1 |
20050210459 | Henderson et al. | Sep 2005 | A1 |
20050210466 | Carter et al. | Sep 2005 | A1 |
20050223372 | Borchers | Oct 2005 | A1 |
20050223373 | Gage et al. | Oct 2005 | A1 |
20050229171 | Henry et al. | Oct 2005 | A1 |
20050235076 | Winarski et al. | Oct 2005 | A1 |
20050246703 | Ahonen | Nov 2005 | A1 |
20050251799 | Wang | Nov 2005 | A1 |
20050254776 | Morrison et al. | Nov 2005 | A1 |
20050257205 | Costea et al. | Nov 2005 | A1 |
20050257209 | Adams et al. | Nov 2005 | A1 |
20050273229 | Steinmeier et al. | Dec 2005 | A1 |
20050278001 | Qin et al. | Dec 2005 | A1 |
20060010437 | Marolia | Jan 2006 | A1 |
20060013646 | Baulier et al. | Jan 2006 | A1 |
20060029489 | Nulman et al. | Feb 2006 | A1 |
20060031617 | Falcon | Feb 2006 | A1 |
20060031828 | Won et al. | Feb 2006 | A1 |
20060041881 | Adkasthala | Feb 2006 | A1 |
20060049677 | Lawrence et al. | Mar 2006 | A1 |
20060069813 | Biamonte et al. | Mar 2006 | A1 |
20060070055 | Hodder et al. | Mar 2006 | A1 |
20060082965 | Walker et al. | Apr 2006 | A1 |
20060106965 | Falcon | May 2006 | A1 |
20060130037 | Mackay | Jun 2006 | A1 |
20060132964 | Lau et al. | Jun 2006 | A1 |
20060136893 | Blossom et al. | Jun 2006 | A1 |
20060142129 | Siaperas | Jun 2006 | A1 |
20060149321 | Merry et al. | Jul 2006 | A1 |
20060149322 | Merry et al. | Jul 2006 | A1 |
20060149323 | Merry et al. | Jul 2006 | A1 |
20060150177 | Liu et al. | Jul 2006 | A1 |
20060156302 | Yamamoto et al. | Jul 2006 | A1 |
20060168578 | Vorlicek | Jul 2006 | A1 |
20060168581 | Goger et al. | Jul 2006 | A1 |
20060172873 | Beard | Aug 2006 | A1 |
20060179431 | Devanathan et al. | Aug 2006 | A1 |
20060200812 | Mizutani et al. | Sep 2006 | A1 |
20060206888 | Mavrinac et al. | Sep 2006 | A1 |
20060218545 | Taguchi | Sep 2006 | A1 |
20060236518 | Baulier | Oct 2006 | A1 |
20060238384 | Hess et al. | Oct 2006 | A1 |
20060248522 | Lakshminarayanan et al. | Nov 2006 | A1 |
20060248524 | Seely | Nov 2006 | A1 |
20070006207 | Appaji | Jan 2007 | A1 |
20070006213 | Shahidzadeh et al. | Jan 2007 | A1 |
20070006214 | Dubal et al. | Jan 2007 | A1 |
20070038990 | White et al. | Feb 2007 | A1 |
20070055969 | Yang | Mar 2007 | A1 |
20070055970 | Sakuda et al. | Mar 2007 | A1 |
20070074201 | Lee | Mar 2007 | A1 |
20070083630 | Roth et al. | Apr 2007 | A1 |
20070169073 | O'Neill et al. | Jul 2007 | A1 |
20070169075 | Lill et al. | Jul 2007 | A1 |
20070169089 | Bantz et al. | Jul 2007 | A1 |
20070169090 | Kang | Jul 2007 | A1 |
20070169092 | Lee | Jul 2007 | A1 |
20070169093 | Logan et al. | Jul 2007 | A1 |
20070174834 | Purkeypile et al. | Jul 2007 | A1 |
20070220505 | Bukovec et al. | Sep 2007 | A1 |
20070234331 | Schow et al. | Oct 2007 | A1 |
20070245333 | Ferlitsch | Oct 2007 | A1 |
Number | Date | Country |
---|---|---|
2026223 | Feb 2009 | EP |
0217073 | Feb 2002 | WO |
2005033964 | Apr 2005 | WO |
Entry |
---|
European Search Report in European Application No. 08162401.7, Jul. 19, 2012 (EP2026223 A3) 10 pages. |
Hand Held Products Model Selection Guide, URL: http;//www.handheld.com/site.aspx/na/en/poduct—center/hardware/?poduct+74, 1 page, Mar. 6, 2008. |
Hand Held Products MSM (Mobile Systems Manager) Administrator's Guide, Version 1.1, Hand Held Products, Inc., 77 Visions Drive, Skaneateles Falls, NY 13153, 320 pages, May 2005. |
Hand Held Products, Inc., Dolphin 7400 Net Base Charging Communication Cradle, Product Specifications, 2 pages, 2005. |
Hand Held Products, Inc., Dolphin Mobile Intellibase Communications-Charging Cradle, Product Specifications, 2 pages, 2005. |
Hand Held Products, Inc., HHP Dolphin 7400 Batch Mobile Computer Product Specifications, URL: http://www.amerbar.com/catalog/dolphin—7400.asp, 5 pages, Nov. 28, 2006. |
Industrial Scientific Corporation, Industrial Scientific DS2 Docking Station Description Sheet, URL: http://www.globalspec.com/FeaturedProducts/Detail/IndustrialScientific/DS2—Docking—Station/10809/0, 1 page, Mar. 6, 2008. |
Industrial Scientific Corporation, Industrial Scientific DS2 Docking Station Product Brochure, URL: http:www.airmet.com.au/files/documents/DS2—Lit.pdf, 2 pages, Mar. 6, 2008. |
Industrial Scientific Corporation, Industrial Scientific DS2 Docking Station Specification Sheet, URL: http:www.airmet.com.au/files/documetns/DS2.sub,—Specds.pdf, 1 pages, Mar. 6, 2008. |
Industrial Scientific Corporation, Industrial Scientific DS2 Docking Station Specification Sheet, URL: http:www.airmet.com.au/files/documents/DS2—Specs.pdf, 1 pages, Mar. 6, 2008. |
Industrial Scientific Corporation, Industrial Scientific DS2 Docketing Station, URL: www.indsci.com/products, 5 pages, Apr. 18, 2007. |
Jadak Technologies, 2020-5B Communication and Charging Cradle, Product Detail Sheet, URL: hht://www.jadatech.com/products/product.cfm?prod+1071, 1 page, Mar. 6, 2008. |
Jadak Technologies, AppForge Enterprise Developers Suite, Product Detail Sheets, URL: http://www.jadaktech.com/products/product.cfm?prod=973, 3 pages, Mar. 6, 2008. |
Jadak Technologies, D9500 Series HomeBase, Product Detail Sheet, URL: http:www.jadaktech.com/products/product.cfm?prod=1055, 1 pages, Mar. 6, 2008. |
Jadak Technologies, Dolphin 73-74x0 Intellibase, Product Detail Sheet, URL: http:www.jadaktech.com/products/product.cfm?prod=835, 1 page, Mar. 6, 2008. |
Jadak Technologies, Dolphin 73-74x0 Mobile Base, Product Detail Sheet, URL: http:www.jadaktech.com/products/product.cfm?prod=834, 1 page, Mar. 6, 2008. |
Jadak Technologies, Dolphin 73-74x0 Net Base, Product Detail Sheet, URL: http:www.jadaktech.comlproducts/product.cfm?prod=904, 1 page, Mar. 6, 2008. |
Jadak Technologies, Dolphin 7900 HomeBase, Product Detail Sheet, URL: http:www.jadaktech.com/products/product.cfm?prod=1049, 1 pages, Mar. 6, 2008. |
Jadak Technologies, Dolphin 7900 Mobile Computer, Product Detail Sheets, URL: http:www.jadaktech.com/products/product.cfm?prod=995, 6 pages, Mar. 6, 2008. |
Jadak Technologies, ITScriptNet Data, Collection Software, Product Detail Sheets, URL: http:www.jadaktech.com/products/product.cfm?prod=891, 2 pages, Mar. 6, 2008. |
MRA Technologies, Mobile Inventory Management From MRA Technologies, URL: http://mra-tech.com/mobile.html, 2 pages, Apr. 18, 2007. |
Number | Date | Country | |
---|---|---|---|
20140175169 A1 | Jun 2014 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 13233598 | Sep 2011 | US |
Child | 13663060 | US | |
Parent | 12979147 | Dec 2010 | US |
Child | 13233598 | US | |
Parent | 11893603 | Aug 2007 | US |
Child | 12979147 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 13663060 | Oct 2012 | US |
Child | 14053293 | US |