Patent Publication Number: US-9418252-B2

Title: Symbol reading system having predictive diagnostics

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
     The present application claims the benefit of U.S. patent application Ser. No. 13/973,315 for a Symbol Reading System having Predictive Diagnostics filed Aug. 22, 2013 (and published Mar. 6, 2014 as U.S. Patent Application Publication No. 2014/0061305), now U.S. Pat. No. 9,022,288, which claims the benefit of U.S. Provisional Patent Application No. 61/632,422 for a Method of and Apparatus for Predictive Diagnostics and Pro-Active Reporting of Possible Failures in Hybrid Laser Scanning and Digital Imaging Systems, Digital Imaging Systems, and Laser Scanning Systems filed Sep. 5, 2012. Each of the foregoing patent applications, patent publication, and patent is hereby incorporated by reference in its entirety. 
    
    
     FIELD OF DISCLOSURE 
     The present disclosure relates to improvements in detecting and reporting conditions within bar code symbol reading systems deployed at retail POS stations, to avoid system breakdown or failure, and thus the loss of sales or decrease in worker productivity in retail store environments. 
     BACKGROUND 
     In general, prior art POS-based bar code symbol reading systems only alert the cashier and/or manager after error events have occurred, based on log records of error events after they have occurred. Hitherto, retail managers have been satisfied that reports can be generated and action can be discussed regarding these and other fatal errors, using after-the-fact techniques. However, this reactive approach has resulted in unnecessary expenses, and lost revenues in the retail environment. 
     Also, currently, prior art POS-based bar code symbol reading systems and cash register computer systems lack the capacity to report problems with symbologies and product labels that have generated errors or presented difficulties during POS scanning operations. Reports on difficult to scan and read bar code symbols and product items often get lost along the chain from the cashier, to the store manager, and to product representatives. Once a product item is approved for the sale in the retailer&#39;s store, there is usually no quality monitoring of the product and the symbology that it represents after it is released into the retailer&#39;s inventory. 
     Thus, there is a great need in the art for a new and improved bar code symbol reading system having the capacity to support predictive diagnostics and reporting functions, on both internal events and external events, while avoiding the shortcomings and drawbacks of prior art technologies. 
     SUMMARY 
     Accordingly, a primary object of the present disclosure is to provide a new and improved bar code symbol reading system with the capacity to support predictive diagnostics and reporting functions so that system operators and/or other personnel can be notified of particular kinds of events before they happen, allowing improved levels of system maintenance to be performed during normal scheduled maintenance activities, while avoiding the shortcomings and drawbacks of prior art technologies. 
     Another object is to provide a bar code symbol reading system, equipped with an integrated scale subsystem, and the capacity to support levels of predictive diagnostics and reporting functions allowing system operators to be automatically notified of particular kinds of events before they are likely to happen, so that improved levels of system maintenance can be provided during normal scheduled maintenance activities. 
     Another object is to provide a bar code symbol reading system having the capacity to predict that many different types of errors could possibly happen soon, thus providing advance warnings, and saving significant amounts of money in expenses and lost revenue to retailers. 
     Another object is to provide a bar code symbol reading system, in cooperation with a POS cash register computer system and POS information server deployed in a retail information network, with the capacity to proactively generate predictive error alerts based on what may likely happen either inside the system, or outside the system while code symbol scanning, before the occurrence of an error event. 
     Another object is to provide a bar code symbol reading system having the capacity to list a number of specific potential problem situations in the system, and automatically alert the cashier and/or store management before such situations become critical or otherwise fatal. 
     Another object is to provide a bar code symbol reading system that uses its digital imager to capture a digital image of the scanning/imaging window while in a clean state, and then store the digital image as a reference for subsequent use when determining when the scanning/imaging window has attained an optical state that requires cleaning. 
     Another object is to provide a bar code symbol reading system that senses the drive current supplied to the illumination LED array used by the digital imager, and compare the sensed LED drive current to a baseline current, detecting predictive error events (PEE) for the LED illumination array. 
     Another object is to provide a bar code symbol reading system that uses its digital imager to image a laser scanning pattern being projected onto the scanning window, to determine if any laser diodes are not functioning, or are producing weak laser beams. 
     Another object is to provide a bar code symbol reading system that uses its digital imager to digitally image a laser scanning pattern being projected onto a reflective flat surface while in a maintenance mode, and analyze the laser patterns to determine if any laser diodes in the laser scanning subsystem are not functioning properly, or are producing weak laser scanning beams. 
     Another object is to provide a digital-imaging bar code symbol reading system that flags imager communication degradation by analysis of main microprocessor operation. 
     Another object is to provide a bar code symbol reading system that uses the decode time (i.e. time to scan code) as a prediction of a dirty scanning window or illumination issues or other internal functional degradation. 
     Another object is to provide a bar code symbol reading system that uses the number of decoding attempts (i.e. moving an object into, out of and back into the scan field a number of times) as a prediction of a dirty scanning window, illumination issues, and/or other internal functional degradation. 
     Another object is to provide a bar code symbol reading system that uses an increased decode time on specific code symbologies, along with server interaction, to predict potential error events, or scanner issues. 
     Another object is to provide a bar code symbol reading system that processes digital images acquired during scale zero measurement operations, to diagnose incorrect scale zeroing operation. 
     Another object is to provide a bar code symbol reading system that captures and processes digital images upon the occurrence of “no reads” to diagnose or predict improper operation (i.e. to reveal that the bar code was covered or obstructed, and a special beep sound is produced). 
     Another object is to provide a bar code symbol reading system that predicts potential issues by sensing for the warning current levels of laser devices employed in its laser scanning subsystem. 
     Another object is to provide a bar code symbol reading system that predicts potential issues by sensing for the warning current levels of motors employed in its laser scanning subsystem. 
     Another object is to provide a bar code symbol reading system that monitors the total current level produced by the system on initial surges, and also during quiescent operation, for change in levels previously stored as maximum surge and quiescent normal current levels. 
     Another object is to provide a bar code symbol reading system that monitors the total current level produced by the system during different levels of power-save mode operation for analysis and determination that the unit is not saving as much power as designed or desired. 
     Another object is to provide a bar code symbol reading and weigh scale system that senses the number of zero button presses as a prediction of the scale requiring zeroing too often. 
     Another object is to provide a bar code symbol reading system that senses extremely short-duration button depressions as a predictor of potential button failure, wherein too-short switching duration indicate non-real switching operations, and too-long switching duration indicates sticking-action. 
     Another object is to provide a bar code symbol reading system that uses the digital imager as a backup from waking up from power save modes to predict that separate IR-based wake-up system sensor is not being used as much and may be failing. 
     Another object is to provide a bar code symbol reading system that predicts potential wake-up sensor issues by monitoring the need for the wakeup button or switch to determine if it has been initiated repetitively thus showing the wakeup sensor not working as designed. 
     Another object is to provide a bar code symbol reading system that does periodic self-checking on its own electronic circuitry and functions namely firmware integrity, interface operation, configuration validity, auxiliary scanner integrity, internal digital imager integrity, customer-facing imager integrity, EAS subsystem integrity, electronic weigh scale sub-system integrity, and the integrity of any and all attached devices, monitored for current and predictive future problems. 
     Another object is to provide a bar code symbol reading and weigh scale system that uses the last calibration date as predictor of scale maintenance requirements. 
     Another object is to provide a bar code symbol reading system that predicts system issues by sensing changes in electrical current flowing through all local and auxiliary devices. 
     Another object is to provide a bar code symbol reading and weigh scale system that predicts the need for scale calibration by sensing scale zero drift. 
     Another object is to provide a bar code symbol reading and weigh scale system that monitors scale metrology numbers to diagnose improper scale operation, wherein these numbers plus the current weight read from the electronic scale subsystem provide an indication that the scale subsystem is drifting toward non-desired areas of operation. 
     Another object is to provide a bar code symbol reading system with the capacity for automated barcode analysis, problem notification and performance metric generation for retail managers through the supply chain up to product manufacturers. 
     Another object is to provide a bar code symbol reading system that proactively generates alerts based on what may happen within the system, based on monitored conditions within the system. 
     Another object is to provide a novel method for generating predictive error events (PEEs) with respect to a bar code symbol reading system deployed on a retailer information network, and storing the PEE records in a PEE database for subsequent processing by a POS information server. 
     These and other objects will become apparent hereinafter and in the Claims. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       In order to more fully understand the Objects, the following Detailed Description of the Illustrative Embodiments should be read in conjunction with the accompanying figure Drawings in which: 
         FIG. 1  is a retail information network of the present disclosure, comprising a network infrastructure with Internet connectivity and on which the following network devices are deployed: (i) a first POS-based scanning and checkout system interfaced to a hybrid (i.e. laser scanning and digital imaging) bar code symbol reading system, (ii) a second POS-based scanning and checkout system interfaced with a multi-laser bi-optical laser scanning bar code symbol reading system, (iii) a third POS-based scanning and checkout system interfaced with a single laser scanning bar code reading system, (iv) a product/price database server for storing product/price data with associated bar code symbol character data, (v) a remote information server (implementable on the same server machine as the product/price database server, but providing a different extended functionality) interfaced with a Predictive Error Event (PEE) database, (vi) a PEE/Problem Logging database server for storing PEEs detected at each POS-station, and (vii) a plurality of Internet-enabled client machines managed by the retail outlet and product manufacturers whose consumer products are being offered for sale and being scanned in the retail store environment; 
         FIGS. 2A and 2B , taken together, set forth a flow chart describing an overview of the predictive error event (PEE) detection processes that are carried out on the retail information network shown in  FIG. 1 , to better manage the occurrence of predictive error events detected within various types of bar code symbol reading systems, deployed at POS stations within the retailer&#39;s information network; 
         FIG. 3A  is a first perspective view of a first illustrative embodiment of the hybrid-type bi-optical bar code symbol reading system for installation and use at a point of sale (POS) checkout station in a retail environment, and supporting a local predictive error event (PEE) database or data store according to the present disclosure; 
         FIG. 3B  a second perspective view of the hybrid-type bi-optical bar code symbol reading system of  FIG. 3A , showing the field of view (FOV) and field of illumination (FOI) of the digital imaging subsystem directly projecting through the vertical scanning window in the vertical section of the system housing; 
         FIG. 3C  is a first cross-sectional side view of the hybrid-type bi-optical bar code symbol reading system of  FIGS. 3A and 3B , showing the FOV of digital imaging module being projected through the vertical scanning window, into the 3D scanning volume of the system, as an operator naturally presents a difficult to read code symbol closely towards the vertical scanning window; 
         FIG. 3D  is a second cross-sectional side view of the hybrid-type bi-optical bar code symbol reading system of  FIGS. 3A and 3B , showing optical and electro-optical components of the digital imaging subsystem and the laser scanning subsystem containing within the system housing, and the FOV of the digital imaging system projecting through and spatially-overlapping with the field of view (FOV) of the laser scanning subsystem embedded within the vertical section of the system housing; 
         FIG. 4A  is a perspective view of the digital imaging module (i.e. digital imaging subsystem) employed in the system of  FIGS. 3A through 3E , showing its area-type image detection array mounted on a PC board supporting drivers and control circuits, and surrounded by a pair of linear arrays of light emitting diodes (LEDs) for directly projecting a field of visible illumination (FOI) spatially co-extensive with and spatially-overlapping the FOV of the digital imaging subsystem; 
         FIG. 4B  is a side view of the digital imaging module shown in  FIG. 4A , showing the field of visible illumination produced by its array of LEDs being spatially co-extensive with and spatially-overlapping the FOV of the digital imaging subsystem; 
         FIG. 4C  is an exploded view of the digital imaging module shown in  FIG. 4A ; 
         FIG. 5  is a rear perspective view of the hybrid-type bi-optical bar code symbol reading system of  FIGS. 3A and 3B , showing a portal with a cavity formed in the rear section of the system housing, for receipt of a digital imaging module for projecting the FOV and illumination field produced from the digital imaging module when it is installed within the portal; 
         FIG. 6  is a cross-sectional view of the hybrid-type bi-optical bar code symbol reading system of  FIGS. 3A through 3E and 5 , showing the digital imaging module installed through the portal and into the cavity formed in the rear vertical portion of the system housing, with all of the electrical interfaces between the digital imaging module and system being established on completion of the module installation; 
         FIG. 7  is a block schematic representation of the hybrid scanning/imaging code symbol reading system of  FIGS. 3A through 3D , wherein (i) a pair of laser scanning stations support automatic laser scanning of bar code symbols along a complex of scanning planes passing through the 3D scanning volume of the system, and (ii) a stand-alone digital imaging module, supported within the system housing, supports imaging-based reading of bar code symbols presented to the vertical scanning window of the system; 
         FIG. 8  is a block schematic representation of the digital imaging module supported within the hybrid scanning/imaging code symbol reading system of  FIGS. 3 through 7 ; 
         FIGS. 9A and 9B , taken together, set forth a flow chart describing the control process supported by the system controller within the hybrid scanning/imaging code symbol reading system of the illustrative embodiment shown in  FIGS. 3 through 8 , during its hybrid scanning/imaging mode of operation; 
         FIG. 10  is a perspective view of a bi-optical multi-channel laser scanning bar code symbol reading system supporting a local predictive error event (PEE) database or data store; 
         FIG. 11  is a block schematic system diagram of the bi-optical multi-channel laser scanning bar code symbol reading system shown in  FIG. 10 ; 
         FIGS. 12A and 12B , taken together, provide a flow chart describing the primary steps carried out within the system of  FIG. 10  when reading bar code symbols presented within its scanning field; 
         FIG. 13  is a perspective view of a single-channel digital imaging bar code symbol reading system supporting a local predictive error event (PEE) database or data store; 
         FIG. 14  is a block schematic system diagram of the single-channel digital imaging bar code symbol reading system shown in  FIG. 15 ; 
         FIG. 15  is a flow chart describing the primary steps carried out within the system of  FIG. 14  during system operation; 
         FIGS. 16A and 16B , taken together, set forth a flow chart describing the primary steps carried out during a first illustrative embodiment of a method of automatically and transparently detecting predictive error events (PEE) within bar code symbol reading systems deployed on the retail information networks shown in  FIG. 1 ; 
         FIG. 17A  is a flow chart describing the primary steps carried out during the predictive error event detection process carried out within a hybrid laser scanning and digital imaging system having an electronic weigh scale subsystem, for the purpose of detecting drift away from zero scale measurement/indication; 
         FIG. 17B  is a flow chart describing the primary steps carried out during the predictive error event detection process automatically and transparently carried out within a hybrid laser scanning and digital imaging system having an electronic weigh scale subsystem, for the purpose of predicting electronic scale operation error; 
         FIG. 17C  is a chart showing calculated weight vs. metrology weight, generated during the process of  FIG. 17B ; 
         FIG. 17D  is a flow chart describing the primary steps carried out during the predictive error detection event process automatically and transparently carried out within a hybrid laser scanning and digital imaging system having an electronic weigh scale subsystem, to predict when the electronic scale should be recalibrated; 
         FIG. 18A  is a flow chart describing the primary steps carried out during the predictive error event detection process automatically and transparently carried out within a hybrid laser scanning and digital imaging system having an electronic weigh scale subsystem, to predict when devices are operating outside their specified safe warning range of operating electrical current; 
         FIG. 18B  is a flow chart describing the primary steps carried out during the predictive error event detection process automatically and transparently carried out within a hybrid laser scanning and digital imaging system having an electronic weigh scale subsystem, to predict when devices are operating outside their specified safe warning range of power-save electrical current; 
         FIG. 19A  is a flow chart describing the primary steps carried out during the predictive error event detection process automatically and transparently carried out within a hybrid laser scanning and digital imaging system having an electronic weigh scale subsystem, to predict when the wake-up switch is being used excessively; 
         FIG. 19B  is a flow chart describing the primary steps carried out during the predictive error event detection process automatically and transparently carried out within a hybrid laser scanning and digital imaging system having an electronic weigh scale subsystem, to predict when the backup digital-imaging based wake-up circuit starts performing a larger percentage of the wake-up function operations than the main IR-based wakeup sensor circuit; 
         FIG. 20  is a flow chart describing the primary steps carried out during the predictive error event detection process automatically and transparently carried out within a hybrid laser scanning and digital imaging system having an electronic weigh scale subsystem, to diagnose switch reliability; 
         FIGS. 21A through 21D , set forth, a flow chart describing the primary steps carried out during the predictive error event detection process automatically and transparently carried out within a hybrid laser scanning and digital imaging system having an electronic weigh scale subsystem, to predict when the scanning/imaging windows are dirty. This process is an example of when the cashier is proactively kept in the service loop by feedback presented to the cashier and tracking his/her actions for non-compliance to the solution; 
         FIG. 22  is a flow chart describing the primary steps carried out during the predictive error event detection process automatically and transparently carried out within a hybrid laser scanning and digital imaging system having an electronic weigh scale subsystem, to predict when the imaging LEDs, laser diodes and scanning motors are operating outside their specified range of electrical current; and 
         FIGS. 23A and 23B  set forth a flow chart describing the primary steps carried out during the predictive error detection process automatically and transparently carried out within a hybrid laser scanning and digital imaging system, to predict when certain bar code symbols on certain product items are likely to present difficulty when scanned at POS checkout stations, and to automatically send notification and metrics to retail managers, and other along the supply chain, up to product manufacturers. 
     
    
    
     DETAILED DESCRIPTION 
     Referring to the figures in the accompanying Drawings, the various illustrative embodiments of the apparatus and methodologies will be described in great detail, wherein like elements will be indicated using like reference numerals. 
     The Retail Information Network According to the Invention Disclosure 
     In  FIG. 1 , the retail information network  900  of the present disclosure is shown comprising: an Internet infrastructure  910  comprising Internet Packet (IP) routers, switches, hubs and other networking devices supporting TCP/IP and other communication protocols well known in the packet-switched data communications and networking art: a first POS-based scanning and checkout system  920  employing a hybrid (i.e. laser scanning and digital imaging) bar code symbol reading system  100  interfaced with a POS-based cash register system  930  having a display panel, keyboard and cash drawer, being operably connected to the infrastructure of the Internet  910 , capable of differentiating laser scan data from image scan data, and maintaining a local database or data store  905  for storing and accessing predictive error event (PEE) records generated within the system  100 ; a second POS-based scanning and checkout system  940  employing a bi-optical multi-laser bar code symbol reading system  400  interfaced with a POS-based cash register system  930  having a display panel, keyboard and cash drawer, being operably connected to the infrastructure of the Internet  910 , and maintaining a local database or data store  905  for storing and accessing predictive error event (PEE) records generated within the system  400 ; a third POS-based scanning and checkout system  950  employing a single digital imaging bar code symbol reading system  600  or laser scanning bar code reading system  800  interfaced with a POS-based cash register system  930  having a display panel, keyboard and cash drawer, being interfaced with the Internet infrastructure  910 , and maintaining a local database or data store  905  for storing and accessing for storing and accessing predictive error event (PEE) records generated within the system  600 ; a remote event/problem logging information server with remote database  960 , operably connected to the infrastructure of the Internet  910 , for storing PEE records and performing procedures on data records stored in the database; and a plurality of Internet-enabled client machines  980  having a display panel and keyboard, and being operably connected to the infrastructure of the Internet  910 , supporting a web browser and email client application software, and managed by different consumer product manufacturers supplying consumer products being sold in the retail store environment, for receiving email or instant messages transmitted by the POS information server  970  in response to a predetermined number of predictive error events (PEE) detected at the POS stations within the retail store environment. 
     Each POS-based scanning and checkout system  920 ,  940  and  950  has access to the retail store&#39;s product/price database server  990 , which typically is centrally maintained on the retail network and possibly a copy thereof is resident within the POS-based cash register system. For each UPC/EAN-indexed (bar-coded) product within inventory and offered for sale in the retail environment, the product/price database server  990  contains a number of information items associated with bar code symbol character data (string) encoded in a bar code symbol structure applied to, or associated with, the bar coded item, namely: product descriptors; price information; trademark descriptors; special handling instructions; and possibly other information items conventionally specified under the EDI  832  retail transaction data set, well known in the art. 
     As used hereinafter, and in the Claims, the terms “bar code symbol character data”, “bar code symbol character data string”, and “symbol character data string” shall refer to any numerical, alphabetical or alphanumerical string, of any length, constructed according any symbology (e.g. UPC, EAN, UPC/EAN, JAN, and other symbologies known in the art) that can serve to uniquely identify a product item being purchased at a POS station, when used with a product/price database system, such as product/price database  990 . 
     Each POS-based scanning and checkout system  920 ,  940  and  950  has the capacity to recognize whether or not a scanned product is registered or identifiable on the retailer&#39;s information network. Also, each POS-based scanning and checkout system has the capacity to predict Potential Error Events (PEE), during system operation, using the predictive test procedures set forth in the flow charts of  FIGS. 17A through 23B , specified in greater detail hereinafter. Also, each bar code symbol reading system interfaced to its POS-based cash register system  930 , maintains a local database (or memory storage device)  905  that maintains a record of each predictive error event (PEE) identified by the bar code symbol reading system  100 ,  400  and  600 . Each PEE record consists of a local database record comprising: a time-of-day (i.e. date/time) stamp; a machine identification number (i.e. uniquely specifying the bar code symbol reading system on the retailer&#39;s information network; a MAC address for the system; an Internet address for the machine (if statically assigned thereto by the network administrator); the system functions, or device components which are predicted as likely to experience failure or malfunction in the near or not too distant future; retail store number identifying the store where the system is installed; the physical location in the store where the bar code symbol reading system is installed (e.g. POS station number); and possibly GPS coordinates where the bar code symbol reading system is physically located; etc. This local PEE record item is maintained in the local PEE database  905 , along with its active or inactive status, so as not to repeat the same alert if it were to appear again when already active. The local PEE database  905  within the bar code symbol reading system is useful in that it can enforce local predictive diagnostics responses such as getting the cashier or POS operator to perform local predictive maintenance such as cleaning the scanning windows. Remote PEE database(s)  960  is maintained on the network for recognizing certain PEE events have exceeded their allowed threshold (or limits), and notifying different managerial personnel as needed. The local limit and threshold can be what number of PEE records must be generated for a given PEE type for a PEE record to be transmitted to the POS Server  970  via the POS cash register computer system  930 . In the event the local and remote PEE threshold/limits are both set to zero, then each and every PEE record will be transmitted to the remote POS Server  970 , to cause the POS server to automatically and immediately generate a Predictive Error Alert (PEA), as will be described in greater detail hereinafter. 
     Also, each bar code symbology (barcode-type) has its own built in programmable level of security (i.e. a set of preconfigured rules) for checking, validating and verifying bar code symbol strings (e.g. bar and space tolerances, adjacent character constraints, redundancy, etc). Thus, when the symbology is decoded by the bar code symbol reading system, the system will apply this set of pre-configured rules to perform filter functions that verify the correctness of the bar symbol character data string that it is about to be transmitted to the cash register system, after each scanning event. The main purpose of these pre-configured rules is to prevent misreads by the bar code symbol reading system. At some point, after several attempts to read a difficult bar code symbol, the symbol character data for a scanned product item may not be transmitted to the POS-based cash register computer, and used to ring up the product purchase during the checkout process. 
     In general, the bar code symbol reading systems of the present disclosure have special capacities for recognizing particular types of predictive error events (PEEs) to be described below. Notably, these error events can be classified into several different classes based on the system requirements of the PEE type (e.g. some PEE types require digital imaging and processing functionalities within the bar code symbol reading system, and other PEE types requiring both digital imaging and laser scanning functionalities, and perhaps integrated electronic weigh scale instrumentation as well, in certain system applications). 
     Predictive Activities (Error Event Types) Requiring the Digital Imaging Based Monitoring: 
     (1) The hybrid digital imaging and laser scanning system uses its digital imager to capture one or more digital images (i.e. pictures) of a clean scanning/imaging window, and then store these digital images as a reference for future use in determining when the scanning/imaging window requires cleaning during future diagnostic procedures carried out on the hybrid bar code symbol reading system. 
     (2) The hybrid digital imaging and laser scanning system monitors the drive current through its array of illumination LEDs, and compare this LED drive current to a baseline current expected to warn the network of potential failure. 
     (3) The hybrid digital imaging and laser scanning system uses its digital imager to image and analyze the laser scanning pattern to predict if any lasers are not working properly or as required for normal operation. 
     (4) The hybrid digital imaging and laser scanning system uses its digital imager to predict degradation in digital image communication supported by the main microprocessor and communication platform. 
     (5) The hybrid digital imaging and laser scanning system uses its digital imager to capture and process digital images of the laser scanning/imaging window and/or laser scanning pattern, and the decode processing time is used to predict the presence of dirty scanning/imaging windows and/or laser scanning pattern issues. 
     (6) The hybrid digital imaging and laser scanning system uses its digital imager to capture and process digital images, and the decode time required to read a specific code symbol, along with server interaction, is used to predict potential scanner issues. 
     (7) The hybrid digital imaging and laser scanning system uses its digital imager to capture and process digital images, and the number of scan-decode attempts required to read a specific code symbol, along with server interaction, is used to predict potential scanner issues. 
     (8) The hybrid digital imaging and laser scanning system uses its digital imager to capture and process digital images of the weigh platter during scale zeroing operations, to predict and notify about incorrect zeroing operation. 
     (9) The hybrid digital imaging and laser scanning system uses its digital imager to capture and process digital images upon the occurrence of “no reads” to diagnose improper operation (i.e. bar code is covered or obstructed, whereby a special beep is sounded). 
     (10) The hybrid digital imaging and laser scanning system uses its digital imager to capture and process digital images of the 3D scanning volume, to predict wake-up sensor is failing. 
     Predictive Activities Requiring Laser Scanning Monitoring Only: 
     (11) The warning current level of the laser diodes are sensed and monitored to predict potential issues. 
     (12) The warning current level of the laser scanning motor is sensed and monitored to predict potential issues. 
     Predictive Activities (Error Event Type) Requiring System Hardware Monitoring: 
     (13) The total current level drawn on initial surge and also during quiescent operation, are monitored for changes measured against current levels that have been previously stored as maximum current surge levels and quiescent normal current levels. 
     Predictive Activities Requiring the Digital Weigh Scale and System Hardware Monitoring: 
     (14) The number of zero button presses are monitored and used to predict whether or not the electronic weigh scale requires servicing or maintenance, despite that the fact that other things can be implied here besides the scale requiring calibration, such as the cashier playing too much with the zero push-button switch. 
     Predictive Activities Requiring System Wake-Up Switch Monitoring: 
     (15) Monitoring the time duration of any system switch generated signals to predict extremely short button presses as a predictor of potential button failures (i.e. if the monitored the switch signals are extremely too short, then they are probably not actual switch actuations, or if the switch signals are too long, then they probably indicate switch-sticking-action). 
     (16) Monitoring the system wake-up switch for repetitive actuations, to predict malfunction or normal wakeup IR sensor operation failure. 
     Predictive Activities Requiring the Digital Imaging Subsystem and System Monitoring: 
     (17) Using the last calibration date of the electronic weigh scale subsystem, as a predictor of scale maintenance required. 
     (18) Monitoring changes in the electrical current flowing through all local and auxiliary devices to predict potential future maintenance issues. 
     Predictive Activities Requiring the Digital Weigh Scale Subsystem: 
     (19) Monitoring the zero drifting behavior in the electronic weigh scale subsystem, to predict the need for electronic weigh scale zeroing or calibration. 
     (20) Monitoring metrology numbers on the electronic weigh scale, are collected during a substantial weighing activity and analyze, diagnose and predict improper scale operation (e.g. drift from the normal travel of the scale when arriving at a final weight indicating possible interference with the scale arms which should be free to travel at all times). 
     Overview of Predictive Error Event (PEE) Detection Carried Out within the Bar Code Symbol Reading System at Each POS Station Deployed Along the Retailer Information Network 
     As described above, each bar code symbol reading system  100 ,  400  and  600  is equipped with the capacity to automatically recognize that there could be a failure indicated by some or all of the predictive error events (PEE) types specified above, depending on the capacities of the system. Such recognition capacities will include, inter alia, sensors, feedback, communication, control and diagnostic software functions, which are proactively used to detect any of the predictive error types specified above. Each predictive error event (PEE) specification has a programmed local limit of operation which once exceeded (the number to exceed may be 0), automatically generates a potential error alert (PEA) transmitting this information to the Point-Of-Sale (POS) terminals. The POS terminal contains software module (e.g. drivers)  908  that filter out these potential error alerts (PEAs). The software module  908  can be realized within the bar code symbol reading system, or installed within the POS cash register computer  930 , as suggested or required in any given application environment. Instead of treating the PEA data as if a bar code symbol was scanned, the POS cash register computer system  930  relays this information, from the bar code symbol reading system, to the POS information server  960 , typically located in the back room or off-site, for time-stamping and special handling of the PEAs. Once a ‘time stamped’ potential error alert (PEA) data package is received by the POS server, the POS server logs and files the event and then determines whether or not an immediate distribution of the notification is required or otherwise indicated. The POS server database  960  will contain records regarding the performance and error events (PEEs) of all checkout lanes in the retail store. POS information server  960  or  970  sends email or instant messages (regarding PEAs) to all the pre-programmed parties that need to know and take action on this documented predictive error event (PEE) information. Such email distribution serves to notify the proper departments that there is a problem brewing with respect to a specific bar code symbol reading system on the retailer information network, and that action should be taken. The PEE record provides evidence that a specific system or component malfunction is imminent, and should be avoided by taking a prescribed course of action now, and not after the malfunction occurs. If no action is taken, then the PEE record will help management account for those individuals who were notified and did not proactively respond to the situation. In summary, the retail information network in  FIG. 1  enforces responsible individuals in the organization to act proactively to service bar code symbol reading equipment on the network, and thereby save the users of the equipment both time and money before machine malfunction or breakdown. The flow of “predictive error alert” activity supported by the system will be described in greater detail hereinafter. 
     Method of Automatically Detecting Predictive Error Events (PEEs) Within Bar Code Symbol Reading Systems Deployed on a Retailer Information Network 
     Referring to  FIGS. 2A and 2B , an overview will be described for the process carried out on the retail information network shown in  FIG. 1 , commenced at each POS-based scanning and checkout system when an operator attempts to read a bar code symbol at the POS station. 
     As indicated at Block A in  FIG. 2A , the bar code symbol reading system  100 ,  400 , or  600  collects scan or image data from a scanned bar coded product, decode processes the same to generate symbol character data, and then transmits the symbol character data to the Point-Of-Sale (POS) cash register terminal (i.e. host computer system). 
     As indicated at Block B, in turn, the POS cash register system  930  then determines whether the received symbol character data string (from the bar code symbol reading system) is stored or on file in the product/price database  990 —which can be stored locally at the POS cash register computer system, or in database server or POS information server  970  on the network. If the product/price database  990  is stored on the POS information server  970 , or on a separate POS information server, then the POS cash register system  930  transfers the received symbol character data to the POS information server  970 , usually in the retailer&#39;s back office, to check if the received symbol character data is contained in (i.e. on file) in the product/price database  990 . 
     As indicated at Block C, if during system operation, a predictive error event (PEE) is activated in the local PEE database  905  aboard the bar code symbol reading system, then the bar code symbol reading system automatically logs and stores the PEE data record, in the local PEE database or data store  905 , for future reference and non-repetitive use. 
     As indicated at Block D, after the PEE record has been locally recorded in the bar code symbol reading system, in the event that the detected predictive error event (PEE) has exceeded the locally set threshold level, which may be zero, the bar code symbol reading system sends a PEE alert and associated PEE data package to the POS cash register computer system  930 , interfaced with the bar code symbol reading system. 
     As indicated at Block E, the POS cash register computer system  930  receives the PEE alert and data package, and transmits the same to the remote POS information server  960 . 
     As indicated at Block F, the remote POS information server  960  receives the PEE data package, stores the PEE data package in its PEE log/record database, and then processes the data according to predefined criteria. 
     As indicated at Block G, in the event the POS information server  960  determines that the PEE warrants immediate action, then the POS information server  960 , or  970 , generates a PEE alert document or message, and sends the PEE alert document by e-mail or instant messaging all parties listed on the group contact list, and waits for the next PEE alert to arrive from a POS cash register computer system  930 . This alert list will contain the cashier, in some cases such as “clean the scan window” event in which case an alert message is transmitted to the POS cash register computer system to immediately alert the cashier. 
     Specification of the Hybrid-Type Scanning/Imaging Bar Code Symbol Reading System Employing a Locally Maintained Predictive Error Event (PEE) Database 
       FIGS. 3A through 3D  show an illustrative embodiment of the hybrid laser-scanning/digital-imaging (i.e. scanning/imaging) based bar code symbol reading system  100  of the present disclosure supporting three different modes of operation, namely: a laser scanning (only) mode of operation; a digital imaging mode of operation; and a hybrid scanning/imaging mode of operation. The hybrid scanning/imaging system  100  of the present disclosure, and its various modes of operation, will now be described below in great technical detail. 
     As shown in  FIGS. 3A through 3D , the hybrid scanning/imaging code symbol reading system of the illustrative embodiment includes a system housing  2  having a vertical housing section  2 A having a vertical optically transparent (glass) scanning window  3 A, and a horizontal housing section  2 B having a horizontal optically transparent (glass) scanning window  3 B. As shown, the horizontal and vertical sections  2 A and  2 B are arranged in an orthogonal relationship with respect to each other such that the horizontal and vertical scanning windows are substantially perpendicular. First and second laser scanning stations  150 A and  150 B are mounted within the system housing, and provide a laser scanning subsystem  150  for generating and projecting a complex groups of laser scanning planes through laser scanning windows  3 A and  3 B where the laser scanning planes intersect and produce an omni-directional laser scanning pattern within a 3D scanning volume  80  defined between the vertical and horizontal scanning windows  3 A and  3 B, and other figures. Details on the laser scanning stations or platforms  150 A and  150 B can be found in U.S. Pat. No. 7,422,156 incorporated herein by reference, as if set forth fully herein. 
     As shown in  FIGS. 3A and 3B , an IR-based proximity detector  67 A is mounted in the front portion of the housing, below circular switch panel  79 , for automatically detecting the presence of a human operator in front of the 3D scanning volume  80  during system operation. The shape of the IR detection window for the IR-based proximity detector  67 A can be adapted to the space available on the housing. The function of the IR-based proximity detector  67 A is to wake up the system (i.e. WAKE UP MODE), and set a SLEEP Timer (T 1 ) which counts how long the system has to read a bar code symbol (e.g. 15 minutes) before the system is automatically induced into its SLEEP MODE, where the polygon scanning element and laser diodes are deactivated to conserve electrical power within the system. Preferably, the IR-based proximity (i.e. wake-up) detector  67 A is realized using (i) an IR photo-transmitter for generating a high-frequency amplitude modulated IR beam, and (ii) a IR photo-receiver for receiving reflections of the amplitude modulated IR beam, using a synchronous detection circuitry, or combination thereof, well known in the art; or (iii) a photo-transistor which detects and responds to changes in reflected light intensity, in a programmed manner. 
     As shown in  FIG. 3B , a digital camera mounting/installation portal  288  is formed in the upper housing section of the system housing, and has a geometry closely matching the geometry of the digital imaging module  210  that slides into the installation portal  288 . As shown in  FIGS. 5 and 6 , the digital imaging module  210  has data and power/control interfaces  295  and  296  which are adapted to engage and establish electrical connections with matching data and power/control interfaces  287  and  286 , respectively, mounted within the interior portion of the portal. It is understood that other methods of interfacing the digital imaging module are possible and will occur to those skilled in the art in view of the present disclosure. 
     As shown in  FIG. 3C , installation portal  288  is formed within the vertical section of the housing, and includes a peep-type aperture  289  allowing the FOV and field of illumination (FOI) to project therethrough, and then directly through the vertical scanning window, into the 3D scanning volume  80 . Preferably, the resulting field of view (FOV) will extend several inches into the 3D scanning volume  80  (e.g. 6 inches or more), with a depth of focus of at least a few inches (e.g. 2-3 inches) before the vertical scanning window  3 A, but may extend substantially beyond the scanning window  3 A as the application may require. 
     As shown in  FIG. 3C , when the digital imaging module  210  is installed in its installation portal  288 , the visible targeting beam  270  supported by the digital imaging module can be enabled by way of the data/power/control interface circuitry provided within the portal. At the same time, the automatic object detection subsystem  220  within the digital imaging module  210  can be enabled so that the digital imaging module automatically generates and projects its IR-based detection beam  232  through the vertical scanning window  3 A, to automatically detect an object being presented to the vertical scanning window, and thus activate the digital imaging module  210  to capture and process digital images of the presented product, and any bar code symbols supported on the surface of the presented product. Alternatively, the object detection subsystem  220  can be disabled and the digital imaging module operated to continuously capture, buffer and process digital images at a rate  60  frames per second, in an enhanced continuous imaging presentation mode. 
     As shown in  FIG. 3D , the hybrid-type bi-optical bar code symbol reading system has a rear housing portal into which the digital imaging module  210  is installed, and projects its FOV and illumination field through a peep-hole  289  formed in the housing structure, allowing the digital imaging module to be added as an optional feature or integrated with the system at the manufacturing plant. 
     As shown in  FIG. 3D , during the hybrid scanning/imaging mode of operation, the FOV of the digital imaging module  210  spatially overlaps a portion of the 3D scanning volume  80  of the system. However, in alternative embodiments, the digital imaging FOV can completely spatially overlap the entire 3D scanning volume  80 , or simply fill in a region of space between the vertical scanning window and the edge portion of the 3D scanning volume  80 . This way, when the operator presents a bar coded product through the 3D scanning volume, towards the vertical scanning window, “sure-shot” bar code reading operation will be ensured even when reading the most-difficult-to-read bar code symbols. 
     In  FIGS. 4A through 4C , the physical construction of an illustrative embodiment of the digital imaging module  210  is shown in great technical detail. As shown, the digital imaging module  210  comprises: a PC board  208 , on which area-type image detection array (i.e. sensor)  235  (e.g. 5.0 megapixel 2D image sensor), LED arrays  223 A and  223 B, and image formation optics  234 , are mounted, along with the circuitry specified in  FIG. 7 ; a mounting framework  242  attached to the PC board  208  as shown; module housing  243  for containing the PC board  208  and mounting framework  242 , and having a light transmission aperture  244  allowing the FOV of the image sensor  235  and the field of illumination (FOI) from LED arrays  223 A,  223 B project out of the module housing  243 , and ultimately through the peep-hole aperture  289  formed in the installation portal  288 , when the module  210  is installed therein, as shown in  FIG. 5 ; and data and power/control interfaces  287  and  286 , respectively, mounted on PC board and extending through the module housing  243  so that matching interface connections can be established in the installation portal  288 , when the module is installed therein. 
     As shown in the system diagram of  FIG. 7 , hybrid scanning/imaging system  100  generally comprises: laser scanning stations  150 A and  150 B for generating and projecting groups of laser scanning planes through the vertical and horizontal scanning windows  3 A and  3 B, respectively, and generating scan data streams from scanning objects in the 3D scanning volume  80 ; a scan data processing subsystem  20  for supporting automatic scan data processing based bar code symbol reading using scan data streams generated from stations  150 A and  150 B; an input/output subsystem  25  for interfacing with the image processing subsystem  20 , the electronic weight scale  22 , RFID reader  26 , credit-card reader  27 , Electronic Article Surveillance (EAS) Subsystem  28  (including a Sensormatic® or Checkpoint® EAS tag deactivation block  29  integrated in the system, and an audible/visual information display subsystem (i.e. module)  310 ; a Bluetooth® RF 2-way communication interface  135  including RF transceivers and antennas  103 A for connecting to Blue-Tooth® enabled hand-held scanners, imagers, PDAs, portable computers  136  and the like, for control, management, application and diagnostic purposes; digital imaging module  210  specified in  FIG. 6 , and having data/power/control interface  294  provided on the exterior of the module housing, and interfacing and establishing electrical interconnections with data/power/control interface  285  when the digital imaging module  210  is installed in its installation portal  288  as shown in  FIG. 2C ; IR-based wake-up detector  67 A, operably connected to the control subsystem  37 , for generating and supplying a first trigger signal to the system controller in response to automatic detection of an operator in proximity (e.g. 1-2 feet) of the system housing; an IR-based object edge-motion detection subsystem  43  for producing IR-based planar object detection fields at the edge of the 3D scanning volume  100  of the system, for detecting the motion of objects entering and exiting the 3D scanning volume  100 ; an object targeting illumination subsystem  231 , illustrated in  FIG. 1B , for generating a narrow-area targeting illumination beam  270  into the FOV to help allow the user align bar code symbols within the active portion of the FOV where imaging occurs; a local PEE record database or data store  905  for storing PEE records generated during system operation; and a control subsystem  37  for controlling (i.e. orchestrating and managing) the operation of the laser scanning stations (i.e. subsystems  150 A,  150 B), the functions of the digital imaging module  210  when installed in the installation portal  288 , other subsystems supported in the system. Notably, the local database or data store  905  can be realized in various ways including a simple memory storage device such as EPROM, or using more complex data storage techniques such as a relational database management system (RDBMS) where the application requires or permits. 
     In the illustrative embodiments disclosed herein, each laser scanning station  150 A,  150 B is constructed from a rotating polygon  394 , one or more laser diode sources  395 , light collection optics  396 , one or more photodiodes  397 , and arrays of beam/FOV folding mirrors  398 A and  398 B installed in the horizontal and vertical housing sections, respectively, as shown in  FIG. 3D , and as generally disclosed, for example, in U.S. Pat. No. 7,422,156, incorporated herein by reference. 
     In  FIG. 7 , the bar code symbol reading module employed along each channel of the scan data processing subsystem  20  can be realized using conventional bar code reading techniques, including bar code symbol stitching-based decoding techniques, well known in the art. 
     As shown in  FIG. 8 , the digital imaging module or subsystem  210  employed in the illustrative embodiment of the hybrid scanning/imaging system  100  is realized as a complete stand-alone digital imager, comprising a number of components, namely: an image formation and detection (i.e. camera) subsystem  221  having image formation (camera) optics  234  for producing a field of view (FOV) upon an object to be imaged and a CMOS or like area-type image detection array  235  for detecting imaged light reflected off the object during illumination operations in an image capture mode in which at least a plurality of rows of pixels on the image detection array are enabled; a LED-based illumination subsystem  222  employing an LED illumination array  232  for producing a field of narrow-band wide-area illumination  226  within the entire FOV  233  of the image formation and detection subsystem  221 , which is reflected from the illuminated object and transmitted through a narrow-band transmission-type optical filter and detected by the image detection array  235 , while all other components of ambient light are substantially rejected; an automatic light exposure measurement and illumination control subsystem  224  for controlling the operation of the LED-based illumination subsystem  222 ; an image capturing and buffering subsystem  225  for capturing and buffering 2-D images detected by the image formation and detection subsystem  221 ; a digital image processing subsystem  226  for processing 2D digital images captured and buffered by the image capturing and buffering subsystem  225  and reading 1D and/or 2D bar code symbols represented therein; an input/output subsystem  527  for outputting processed image data and the like to an external host system or other information receiving or responding device; a system memory  229  for storing data implementing a configuration table  229 A of system configuration parameters (SCPs); data/power/control interface  294  including a data communication interface  295 , a control interface  296 , and an electrical power interface  297  operably connected to an on-board battery power supply and power distribution circuitry  293 ; a Bluetooth communication interface, interfaced with I/O subsystem  227 ; and a system control subsystem  230  integrated with the subsystems above, for controlling and/or coordinating these subsystems during system operation. 
     In addition, the hybrid system  100  also includes: an object targeting illumination subsystem  231  for generating a narrow-area targeting illumination beam  270  into the FOV, to help allow the user align bar code symbols within the active portion of the FOV where imaging occurs; and also an object detection subsystem  43  for automatically producing an object detection field within the FOV  233  of the image formation and detection subsystem  221 , to detect the presence of an object within predetermined edge regions of the object detection field, and generate control signals that are supplied to the system control subsystem  230  to indicate when an object is detected within the object detection field of the system. 
     In order to implement the object targeting subsystem  231 , a pair of visible LEDs can be arranged on opposite sides of the FOV optics  234 , in the digital imaging module  210 , to generate a linear visible targeting beam that is projected off a FOV folding and out the imaging window  203 , as shown and described in detail in US Publication No. US20080314985 A1, incorporated herein by reference in its entirety. 
     Also, the object motion detection subsystem  43  can be implemented using a plurality of pairs of IR LED and IR photodiodes, mounted within the system housing  2 A and  2 B, as disclosed in co-pending U.S. patent application Ser. No. 13/160,873, incorporated herein by reference, to automatically generate parallel planes of IR light to detect the presence of objects entering and leaving the 3D scanning volume  80  and passing through the FOV  233  of the system. 
     The primary function of the image formation and detection subsystem  221  which includes image formation (camera) optics  234  is to provide a field of view (FOV)  233  upon an object to be imaged and a CMOS area-type image detection array  235  for detecting imaged light reflected off the object during illumination and image acquisition/capture operations. 
     The primary function of the LED-based illumination subsystem  222  is to produce a wide-area illumination field  36  from the LED array  223  when an object is automatically detected within the FOV. Notably, the field of illumination has a narrow optical-bandwidth and is spatially confined within the FOV of the image formation and detection subsystem  521  during modes of illumination and imaging, respectively. This arrangement is designed to ensure that only narrow-band illumination transmitted from the illumination subsystem  222 , and reflected from the illuminated object, is ultimately transmitted through a narrow-band transmission-type optical filter subsystem (not shown) within the system and reaches the CMOS area-type image detection array  235  for detection and processing, whereas all other components of ambient light collected by the light collection optics are substantially rejected at the image detection array  535 , thereby providing improved SNR, thus improving the performance of the system. The narrow-band transmission-type optical filter subsystem can be realized by (i) a high-pass (i.e. red-wavelength reflecting) filter element embodied within at the imaging window  203 , and (2) a low-pass filter element mounted either before the CMOS area-type image detection array  235  or anywhere after beyond the high-pass filter element, including being realized as a dichroic mirror film supported on at least one of the FOV folding mirrors employed in the module. 
     The automatic light exposure measurement and illumination control subsystem  224  performs two primary functions: (i) to measure, in real-time, the power density [joules/cm] of photonic energy (i.e. light) collected by the optics of the system at about its image detection array  235 , and to generate auto-exposure control signals indicating the amount of exposure required for good image formation and detection; and (2) in combination with the illumination array selection control signal provided by the system control subsystem  230 , to automatically drive and control the output power of the LED array  223  in the illumination subsystem  222 , so that objects within the FOV of the system are optimally exposed to LED-based illumination and optimal images are formed and detected at the image detection array  235 . 
     The primary function of the image capturing and buffering subsystem  225  is (i) to detect the entire 2-D image focused onto the 2D image detection array  235  by the image formation optics  234  of the system, (2) to generate a frame of digital pixel data for either a selected region of interest of the captured image frame, or for the entire detected image, and then (3) buffer each frame of image data as it is captured. Notably, in the illustrative embodiment, the system has both single-shot and video modes of imaging. In the single shot mode, a single 2D image frame ( 31 ) is captured during each image capture and processing cycle, or during a particular stage of a processing cycle. In the video mode of imaging, the system continuously captures frames of digital images of objects in the FOV. These modes are specified in further detail in US Patent Publication No. 2008/0314985 A1, incorporated herein by reference in its entirety. 
     The primary function of the digital image processing subsystem  226  is to process digital images that have been captured and buffered by the image capturing and buffering subsystem  225 , during modes of illumination and operation. Such image processing operations include image-based bar code decoding methods as described in U.S. Pat. No. 7,128,266, incorporated herein by reference. 
     The primary function of the input/output subsystem  227  is to support universal, standard and/or proprietary data communication interfaces with host system  9  and other external devices, and output processed image data and the like to host system  9  and/or devices, by way of such communication interfaces. Examples of such interfaces, and technology for implementing the same, are given in U.S. Pat. No. 6,619,549, incorporated herein by reference. 
     The primary function of the system control subsystem  230  is to provide some predetermined degree of control, coordination and/or management signaling services to each subsystem component integrated within the system, when operated in its digital imaging mode of operation shown in FIG. 2D. Also, in the illustrative embodiment, when digital imaging module  210  is installed in portal  288 , and interfaced with data/power/control interface  285 , system control subsystem  230  functions as a slave controller under the control of master control subsystem  37 . While this subsystem can be implemented by a programmed microprocessor, in the preferred embodiments of the present disclosure, this subsystem is implemented by the three-tier software architecture supported on micro-computing platform, described in U.S. Pat. No. 7,128,266, incorporated herein by reference. 
     The primary function of the system configuration parameter (SCP) table  229 A in system memory is to store (in non-volatile/persistent memory) a set of system configuration and control parameters (i.e. SCPs) for each of the available features and functionalities, and programmable modes of supported system operation, and which can be automatically read and used by the system control subsystem  230  as required during its complex operations. Notably, such SCPs can be dynamically managed as taught in great detail in co-pending US Publication No. 2008/0314985 A1, incorporated herein by reference. 
     The Control Process Supported within the Bi-Optical Hybrid Scanning/Imaging Code Symbol Reading System 
       FIGS. 9A and 9B  describes an illustrative embodiment of the control process supported by the system controller within the bi-optical hybrid scanning/imaging code symbol reading system  100  during its hybrid scanning/imaging mode of operation. 
     As indicated at Block A in  FIG. 9A , the system is initialized (i.e. parameters are reset, and the system is in SLEEP mode). 
     At the START Block in  FIG. 9A , the system is initialized and programmable/configurable parameters or variables are reset, and at Block A, the system enters its SLEEP mode. 
     At Block B, the system controller determines whether or not the operator is detected by proximity detector  44 D. If not, then the system controller returns to Block A, and if an operator is detected, then the system proceeds to Block C and activates the 3D scanning volume edge detector (i.e. object edge-motion detection subsystem  43 ), and starts (or resets) Timer T 1 . 
     At Block D, the system controller determines whether or not an object is detected entering the 3D Scanning Volume, and if not, the proceeds to Block E, and determines if Timer T 1 &gt;Ts. If so, then at Block F, the system controller resets Timers T 1  and T 2 . If not, then the system controller returns to Block C. 
     If at Block G, an object is detected as entering the 3D scanning volume, the system controller starts Timer T 2 , and at Block H, collects and processes laser scan data in effort to read a 1D bar code symbol. 
     At Block I, the system controller determines whether or not a 1D bar code symbol is read within T 2 &lt;Tp. In the event that a 1D bar code symbol has been read, then at Block J the symbol character data is formatted and at Block K is transmitted to the host system  9 , and then the system returns to Block C, as indicated in  FIG. 9A . 
     If at Block I, a 1D bar code symbol is not decoded within T 2 &lt;Tp, then the system controller determines whether or not an object is detected as leaving the 3D scanning volume at Block L, and if so, then returns to Block C, as indicated in  FIGS. 9A and 9B . 
     If an object is not detected leaving the 3D scanning volume at Block L, then the system controller determines at Block M whether or not T 2 &gt; or =Tp. 
     If the condition T 2 &gt; or =Tp is not met at Block M, then the system controller returns to Block H and continues to collect and process laser scan data in effort to read a 1D bar code symbol. However, it this timer condition is met at Block M, then the system controller advances to Block N and the system enters the scanning and imaging mode, activates the 3D scanning volume edge detectors, and sets Timer Thm. 
     Then at Block O, the system controller collects and processes laser scan data and digital image data so as to read 1D and/or 2D bar code symbols. 
     At Block P, the system controller determines whether or not a 1D or 2D bar code symbol is read within T 2 &lt;Thm, and if so, then the system controller proceeds to Block C. In the event that no 1D or 2D bar code symbol is read within T 2 &lt;Thm, then the system controller proceeds to Block Q and determines whether or not an object is detected as leaving the 3D scanning volume. 
     In the event that an object is detected leaving the 3D scanning volume at Block Q, then the system controller returns to Block C indicated in  FIGS. 9A and 9B . In the event that an object is not detected leaving the 3D scanning volume at Block Q, then the system controller advances to Block R. At Block R, the system controller determines whether or not T 2 &gt;Thm, and if not, then returns to Block H, as shown in  FIG. 9B . However, in the event that T 2 &gt;Thm, then the system controller returns to Block C, as indicated in  FIGS. 9A and 9B . 
     Specification of the Bi-Optical Multiple-Channel Laser Scanning Bar Code Symbol Reading System Employing a Locally Maintained Predictive Error Event (PEE) Database or Data Store 
     Referring to  FIGS. 7, 10 through 12B , an alternative embodiment of a multiple-channel bar code symbol reading system is disclosed. Specifically in  FIG. 10 , a bi-optical multi-channel laser scanning bar code symbol reading system is shown supporting a local predictive error event (PEE) database or data store  905  similar to that described hereinabove. 
     Unlike the hybrid system  100  described above, the laser-scanning bar code symbol reading system  400  only supports a laser scanning mode of operation. However, this system has multiple scan data capturing and processing channels which can capture and process scan data signals nearly simultaneously generated during bar code symbol scanning operations. 
     As shown in  FIG. 10 , the laser scanning code symbol reading system  400  includes a system housing  2  having a vertical housing section  2 A having a vertical optically transparent (glass) scanning window  3 A, and a horizontal housing section  2 B having a horizontal optically transparent (glass) scanning window  3 B. As shown, the horizontal and vertical sections  2 A and  2 B are arranged in an orthogonal relationship with respect to each other such that the horizontal and vertical scanning windows are substantially perpendicular. First and second laser scanning stations  150 A and  150 B are mounted within the system housing, and provide a resultant laser scanning subsystem  150  for generating and projecting a complex group of laser scanning planes through laser scanning windows  3 A and  3 B where the laser scanning planes intersect and produce an omni-directional laser scanning pattern within a 3D scanning volume  80  defined between scanning windows  3 A and  3 B, as shown in  FIG. 10 . 
     Ways of and Means for Waking-Up System Out of its Power-Conserving Mode of Operation 
     In the illustrative embodiment  100  and  40  shown in  FIGS. 3A and 10 , respectively, the system  100  is provided with several different ways of, and means for, waking-up the system from its power-conserving conserving sleep mode of operation, namely: (i) via triggering an IR wake-up sensor  67 A (ii) via triggering a manually-triggered wake-up switch  67 B; and (iii) a triggering a digital imaging based wake-up sensor  67 C implemented using the digital imaging subsystem  210  of the system. 
     As shown in  FIGS. 3A and 10 , the IR-based proximity detector  67 A is mounted in the vertical section under the circular push button assembly  79  for automatically detecting the presence of a human operator in front of the 3D scanning volume  80  region during system operation. Also, the manually-triggered button-type wake-up switch  67 B implemented by switch assembly  79  is mounted on the system housing for each access by the cashier or POS operator, so that the cashier or operator easily depress and wake-up the system from its power-conserving sleep-mode of operation. The function of the IR-based proximity detector  67 A, as well as wake-up switch  67 B, is to wake up the system (i.e. WAKE UP MODE), and set a SLEEP Timer (T 1 ) which counts how long the system has to read a bar code symbol (e.g. 15 minutes) before the system is automatically induced into its SLEEP MODE, during which time the polygon scanning element  394  and laser diodes  395 A,  395 B,  395 C and  395 D, as well as other non-essential circuits, are deactivated to conserve electrical power within the system. 
     Preferably, the IR-based proximity (i.e. wake-up) detector  67 A is realized using (i) an IR photo-transmitter for generating a high-frequency amplitude modulated IR beam, and (ii) a IR photo-receiver for receiving reflections of the amplitude modulated IR beam, or (iii) a photo transistor detecting light interference, using a synchronous detection circuitry, well known in the art. However, the IR or photo-transistor based wake-up sensor  67 A may be realized using other object-sensing technology known in the art. 
     To implement the digital imaging based wake-up sensor  67 C, the digital imaging module  210  in system  100  can be configured to capture and process images of FOV continuously or periodically in search of a change in the FOV indicative of an operator&#39;s hand or body requesting the system to wake-up from its power-conserving mode of operation, into its operational model, where the laser scanning subsystems are operating and ready to laser scan objects transported through the 3D scanning volume and/or the digital imaging subsystem is operating and reading to capture and process images of objects transported through the FOV, in effort to read bar code symbols thereon. 
     As shown in the system diagram of  FIGS. 7 and 11 , the scanning system  100  and  400 , respectively, generally comprises: laser scanning stations  150 A and  150 B for generating and projecting groups of laser scanning planes through the vertical and horizontal scanning windows  3 A and  3 B, respectively, and generating scan data streams from scanning objects in the 3D scanning volume  80 ; a scan data processing subsystem  20  for supporting automatic scan data processing based bar code symbol reading using the scan data streams generated from laser scanning stations  150 A and  150 B; an input/output subsystem  25  for interfacing with the image processing subsystem  20 , the electronic weight scale  22 , RFID reader  26 , credit-card reader  27 , Electronic Article Surveillance (EAS) Subsystem  28  (including a Sensormatic® or Checkpoint® EAS tag deactivation block  29  integrated in system, and an audible/visual information display subsystem (i.e. module)  310 ; a Bluetooth® RF 2-way communication interface  135  including RF transceivers and antennas  103 A for connecting to Blue-Tooth® enabled hand-held scanners, imagers, PDAs, portable computers  136  and the like, for control, management, application and diagnostic purposes; IR-based wake-up detector  67 A, operably connected to the control subsystem  37 , for generating and supplying a first trigger signal to the system controller in response to automatic detection of an operator in proximity (e.g. 1-2 feet) of the system housing; and automatic object edge-motion detection subsystem  44  for detecting the motion of objects entering and exiting the 3D scanning volume  100 ; an IR-based object edge-motion detection subsystem  43  for producing IR-based planar object detection fields at the edge of the 3D scanning volume  100  of the system, as shown in  FIGS. 1A and 4 ; a local Predictive Error Event (PEE) database or data store  905  for storing predictive error events as determined by the POS information server  970 , and further supporting a bar code symbol reading process on the retail information network  1 , as described in  FIGS. 16A through 23B ; a software-implemented bar code symbol arbitration module  908  for selecting the best bar code symbol among multiple bar code symbols presented along multiple data-channels during any given predetermined time window of operation; and a control subsystem  37  for controlling (i.e. orchestrating and managing) the operation of the laser scanning stations (i.e. subsystems  150 A,  150 B), and other subsystems supported in the system. Notably, the local database or data store  905  can be realized in various ways including a simple memory storage device such as EPROM, or using more complex data storage techniques such as a relational database management system (RDBMS) where the application requires or permits. 
     In the illustrative embodiment disclosed herein, each laser scanning station  150 A,  150 B is constructed from a single, common rotating polygon  394 , having multiple sides and mounted at the junction between the vertical and horizontal housing sections  2 A,  2 B, and driven by a high-speed brushless DC motor, and associated drive and sensing circuitry, as shown in  FIG. 3D . However, scanning stations can be constructed with separate rotating polygons, in a conventional manner. The rotating polygon  394  can be regular by ensuring that the interior angles between adjacent sides of the polygon element are substantially equal. Alternatively, the rotating polygon  394  can be irregular by ensuring that the interior angles between adjacent sides of the polygon element are not equal in size, and in fact, are substantially different so as to generate a raster scanning pattern having a highly non-uniform scan density. 
     In the illustrative embodiment, laser scanning subsystem  150 A comprises: a pair of visible laser diode sources (e.g. VLDs)  395 A and  395 B mounted off center to the central axis  399  of the system, for generating a first laser scanning raster pattern  410 ; light collection optics  396 B and a pair of photodiodes  397 A and  397 B mounted so as to collect and detect incoming light rays produced by VLDs  395 A and  395 B, and generate corresponding analog electrical scan data signals for scan data and decode processing by scan data processing subsystem  20  shown in  FIG. 11 ; and array of laser scanning pattern folding mirrors  398 A installed in the horizontal housing sections, as shown in  FIG. 3D , for folding the raster scanning pattern  410 , and projecting a folded scanning pattern out the horizontal scanning window  3 A and into the 3D scanning volume. 
     Also, laser scanning subsystem  150 B comprises: a pair of visible laser diode sources (e.g. VLDs)  395 C and  395 D mounted off center to the central axis  399  of the system, for generating a second laser scanning raster pattern  420 ; light collection optics  396 B and a pair of photodiodes  397 C and  397 D mounted so collect and detect incoming light rays produced by VLDs  395 C and  395 D, and generate corresponding analog electrical scan data signals for scan data and decode processing by scan data processing subsystem  20  shown in  FIG. 11 ; and array of laser scanning pattern folding mirrors  398 B installed in the horizontal housing sections, as shown in  FIG. 3D , for folding the second raster scanning pattern  420  and projecting the folded scanning pattern through the vertical scanning window  3 B, and out into the 3D scanning volume. 
     As the illustrative embodiment of in  FIG. 10 , laser beams from the VLDs in the first scanning subsystem  150 A are positioned on a first side of the scanning polygon  394 , and laser beams  395 C and  395 D are positioned on the opposing side of the scanning polygon  394 , mounted at the junction of the vertical and horizontal housing sections  2 A,  2 B. With this bi-optical laser scanning arrangement, during each complete revolution of the scanning polygon  394 , two completely separate laser scanning raster patterns with 180 degrees of scan coverage are simultaneously generated in the vertical and horizontal housing sections, respectively, and projected/folded off laser scanning pattern folding mirror arrays  398 A and  398 B, respectively, and out the vertical and horizontal scanning windows  3 A and  3 B, respectively, and into the 3D scanning volume  80 . 
     The Control Process Supported within the Bi-Optical Laser Scanning Bar Code Symbol Reading System 
       FIGS. 12A and 12B  describe the control process supported by the system controller within the bi-optical hybrid scanning/imaging code symbol reading system of the first illustrative embodiment. 
     At the START Block in  FIG. 12A , the system is initialized and programmable/configurable parameters or variables are reset, and at Block A, the system enters its SLEEP mode. 
     At Block B, the system controller determines whether or not the operator is detected by proximity detector  67 A. If not, then the system controller returns to Block A, and if an operator is detected, then the system proceeds to Block C and activates the 3D scanning volume edge detector (i.e. object edge-motion detection subsystem  43 ), and starts (or resets) Timer T 1 . 
     At Block D, the system controller determines whether or not an object is detected entering the 3D Scanning Volume, and if not, the proceeds to Block E, and determines if Timer T 1 &gt;Ts. If so, then at Block F, the system controller resets Timers T 1  and T 2 . If not, then the system controller returns to Block C. 
     If at Block G, an object is detected as entering the 3D scanning volume, then the system controller starts Timer T 2 , and at Block H, collects and processes the multiple channels of laser scan data in effort to read a 1D bar code symbol. 
     At Block I, the system controller determines whether or not a 1D bar code symbol is read within T 2 &lt;Tp. In the event that a 1D bar code symbol has been read, then at Block J the symbol character data is formatted and at Block K is transmitted to the host system  9 , and then the system returns to Block C, as indicated in  FIG. 12A . 
     If at Block I, a 1D bar code symbol is not decoded within T 2 &lt;Tp, then the system controller determines whether or not an object is detected as leaving the 3D scanning volume, and if so, then returns to Block C, as indicated in  FIGS. 12A and 12B . 
     If an object is not detected leaving the 3D scanning volume at Block L, then the system controller determines at Block M whether or not T 2 &gt; or =Tp. 
     If the condition T 2 &gt; or =Tp is not met at Block M, then the system controller returns to Block H and continues to collect and process laser scan data in effort to read a 1D bar code symbol. However, it this timer condition is met at Block M, then the system controller returns to Block C. 
     Specification of a Digital Imaging Bar Code Symbol Reading System Employing a Locally Maintained Predictive Error Event (PEE) Database or Data Store 
     Referring now to  FIGS. 13 through 14 , a digital imaging bar code symbol reading system  600  will be described in detail, supporting a local Predictive Error Event (PEE) database  905  for use in the retail information network shown in  FIG. 1 . 
     As shown in  FIG. 13 , the digital-imaging bar code symbol reading system  600  comprises: a hand-supportable housing  602  having (i) a front housing portion  602 B with a window aperture  606  and an imaging window panel  603  installed therein; and (ii) a rear housing portion  602 A. Typically, a single PC board based optical bench (having optical subassemblies mounted thereon) is supported between the front and rear housing portions  602 A and  603 B of the housing which, when brought together, form an assembled unit. A base portion  604  is connected to the assembled unit by way of a pivot axle structure that passes through the bottom portion of the imager housing and the base portion so that the hand-supportable housing and base portion are able to rotate relative to each other. The host/imager interface cable passes through a port formed in the rear of the rear housing portion, and interfaces with connectors mounted on the PC board, and establishes an electrical/communication interface with the cash register (host) computer system  930  to which it is connected. 
     As shown in  FIG. 14 , the digital-imaging based code symbol reading system  600  comprises a number of subsystem components, namely: a digital image formation and detection (i.e. camera) subsystem  621  having image formation (camera) optics  634  for producing a field of view (FOV) upon an object to be imaged and a CMOS or like area-type image detection array  635  for detecting imaged light reflected off the object during illumination operations in an image capture mode in which at least a plurality of rows of pixels on the image detection array are enabled; a LED-based illumination subsystem  622  employing a single LED illumination array  623  comprising visible LEDs  623 A, alternatively interspaced along a linear dimension, in the illustrative embodiment (although other arrangements are possible); a narrow-band transmission-type optical filter (not-shown), realized within the hand-supportable and detected by the image detection array  635 , for transmitting illumination reflected from the illuminated object, while all other components of ambient light are substantially rejected; an object targeting illumination subsystem  631  as described hereinabove; an IR-based object detection subsystem  620  for producing an IR-based object detection field  632  within the FOV of the image formation and detection subsystem  621 ; an automatic light exposure measurement and illumination control subsystem  624  for controlling the operation of the LED-based illumination subsystem  622  including the operation of said visible array within said illumination subsystem; an image capturing and buffering subsystem  625  for capturing and buffering 2-D images detected by the image formation and detection subsystem  621 : a digital image processing subsystem  626  for processing 2D digital images captured and buffered by the image capturing and buffering subsystem  625  and reading 1D and/or 2D bar code symbols represented therein; a local Predictive Error Event (PEE) database  905  for statistics tracking and non-repetitive use, and further supporting a bar code symbol reading process on the retail information network  1 , as described in  FIGS. 12A and 12B ; optionally, a software-implemented bar code symbol arbitration module  908  for selecting the best bar code symbol among multiple bar code symbols presented during any given predetermined time window of operation; an input/output subsystem  627  for outputting processed image data and the like to an external host system or other information receiving or responding device; and a system control subsystem  630  integrated with the subsystems above, for controlling and/or coordinating these subsystems during system operation. Notably, the local database or data store  905  can be realized in various ways including a simple memory storage device such as EPROM, or using more complex data storage techniques such as a relational database management system (RDBMS) where the application requires or permits. 
     The primary function of the object targeting subsystem  631  is to automatically generate and project a visible linear-targeting illumination beam  670  across the central extent of the FOV of the system in response to either (i) the automatic detection of an object during hand-held imaging modes of system operation, or (ii) manual detection of an object by an operator when he/she manually actuates the trigger switch  605 . 
     The primary function of the object motion detection and analysis subsystem  620  is to automatically produce an object detection field  632  within the FOV  633  of the image formation and detection subsystem  621 , to detect the presence of an object within predetermined regions of the object detection field  632 , as well as motion and velocity information about the object therewithin, and to generate control signals which are supplied to the system control subsystem  630  for indicating when and where an object is detected within the object detection field of the system. The automatic IR-based object motion detection and analysis subsystem  620  can be implemented using an IR LED  690 A and IR photodiode  690 B supported below the linear array of visible LEDs  623 A, or by other suitable means. 
     The image formation and detection (i.e. camera) subsystem  621  includes image formation (camera) optics  634  for providing a field of view (FOV)  633  upon an object to be imaged and a CMOS area-type image detection array  635  for detecting imaged light reflected off the object during illumination and image acquisition/capture operations. 
     The primary function of the LED-based illumination subsystem  622  is to produce a visible wide-area illumination field  636 A from the visible LED array  623 A when subsystem  622  is operating in its illumination mode during digital image capture. In the preferred embodiment, the field of illumination has a narrow optical-bandwidth and is spatially confined within the FOV of the image formation and detection subsystem  621  during modes of illumination and imaging, respectively. This arrangement is designed to ensure that only narrow-band illumination transmitted from the illumination subsystem  622 , and reflected from the illuminated object, is ultimately transmitted through a narrow-band transmission-type optical filter subsystem within the system and reaches the CMOS area-type image detection array  635  for detection and processing, whereas all other components of ambient light collected by the light collection optics are substantially rejected at the image detection array  635 , thereby providing improved SNR, thus improving the performance of the system. The narrow-band transmission-type optical filter subsystem is realized by (1) a high-pass (i.e. red-wavelength reflecting) filter element embodied within at the imaging window  603 , and (2) a low-pass filter element mounted either before the CMOS area-type image detection array  635  or anywhere after beyond the high-pass filter element, including being realized as a dichroic mirror film supported on at least one of the FOV folding mirrors employed in the digital imaging system. 
     In the illustrative embodiment, the automatic light exposure measurement and illumination control subsystem  624  performs two primary functions: (1) to measure, in real-time, the power density [joules/cm] of photonic energy (i.e. light) collected by the optics of the system at about its image detection array  635 , and to generate auto-exposure control signals indicating the amount of exposure required for good image formation and detection; and (2) in combination with the illumination array selection control signal provided by the system control subsystem  630 , to automatically drive and control the output power of the visible LED array  623 A, employed in the illumination subsystem  622 , so that objects within the FOV of the system are optimally exposed to either visible or invisible LED-based illumination, as determined by the system control subsystem  630 , and optimal images are formed and detected at the image detection array  635 . A parabolic light collection mirror can be used to focus collected light from the FOV onto photo-detector  681 , which can be operated independently from the area-type image sensing array  635 . 
     The primary function of the image capturing and buffering subsystem  625  is (1) to detect the entire 2-D image focused onto the 2D image detection array  635  by the image formation optics  634  of the system, (2) to generate a frame of digital pixel data for either a selected region of interest of the captured image frame, or for the entire detected image, and then (3) buffer each frame of image data as it is captured. Notably, in the illustrative embodiment, the system has both single-shot and video modes of imaging. In the single shot mode, a single 2D image frame ( 31 ) is captured during each image capture and processing cycle, or during a particular stage of a processing cycle. In the video mode of imaging, the system continuously captures frames of digital images of objects in the FOV. These modes are specified in further detail in US Patent Application Publication No. US20080314985 A1, incorporated herein by reference in its entirety. 
     The primary function of the digital image processing subsystem  626  is to process digital images captured and buffered by the image capturing and buffering subsystem  625 , under the control of the system control subsystem  630  so that the method of bar code symbol reading described in  FIG. 15  is carried out in successful manner. Such image processing operations include the practice of image-based bar code decoding methods, as described in U.S. Pat. No. 7,128,266, incorporated herein by reference. 
     The primary function of the input/output subsystem  627  is to support universal, standard and/or proprietary data communication interfaces with external host systems and devices, and output processed image data and the like to such external host systems or devices by way of such interfaces. Examples of such interfaces, and technology for implementing the same, are given in U.S. Pat. No. 6,619,549, incorporated herein by reference in its entirety. 
     The primary function of the system control subsystem  630  is to provide some predetermined degree of control, coordination and/or management signaling services to each subsystem component integrated within the system, as shown, while carrying out the bar code symbol reading method described in  FIG. 15 . While this subsystem can be implemented by a programmed microprocessor, in the preferred embodiments, this subsystem is implemented by the three-tier software architecture supported on micro-computing platform as described in U.S. Pat. No. 7,128,266 and elsewhere hereinafter. 
     The primary function of the manually-activatable trigger switch  605 A integrated with the housing is to enable the user, during a manually-triggered mode of operation, to generate a control activation signal (i.e. trigger event signal) upon manually depressing the same (i.e. causing a trigger event), and to provide this control activation signal to the system control subsystem  630  for use in carrying out its complex system and subsystem control operations, described in detail herein. 
     The primary function of the system configuration parameter table  629  in system memory is to store (in non-volatile/persistent memory) a set of system configuration and control parameters (i.e. SCPs) for each of the available features and functionalities, and programmable modes of supported system operation, and which can be automatically read and used by the system control subsystem  630  as required during its complex operations. Notably, such SCPs can be dynamically managed as taught in great detail in co-pending U.S. Pat. No. US20080314985 A1, incorporated herein by reference. 
     The Control Process Supported within the POS-Based Digital Imaging Bar Code Symbol Reading System 
     In general, hand-supportable digital imaging system  600  of  FIGS. 13 and 14  supports both manually-triggered and automatically-triggered modes of operation, and the method of bar code symbol reading described below can be practiced using either of these triggering techniques. 
     In  FIG. 15 , the flow chart describes the method of reading bar code symbols carried out by the digital-imaging based bar code symbol reader  600  shown in  FIGS. 13 and 14 , and described above. 
     As indicated at Block A in  FIG. 15 , the control subsystem  630  determines if an object has been detected in the field of view (FOV). When the system is operating in its manually-triggered mode, this operation can be achieved by the user pulling the manually pulling trigger switch  605 A. When the system is operating in its automatically-triggered mode of operation, this operation can be achieved by the object detection subsystem automatically detecting the presence of an object within the field of view (FOV) of the system. In the event that an object is detected, then at Block B, the system control subsystem  630  enables the image formation and detection subsystem to detect and capture a digital image of the object in the FOV, using a field of visible LED-based illumination generated by illumination subsystem  622 , or alternatively ambient illumination (e.g. to facilitate the reading of bar code symbols displayed on LCD screens of mobile phones, mobile computers and the like). At this stage, the object might bear a bar code symbol  16 A within the FOV of the system. 
     At Block C in  FIG. 15 , control subsystem  630  runs a decode algorithm on the captured digital image, and if at Block D, a bar code symbol graphically represented in the digital image is decodable, then at Block E, the bar code symbol is decoded and the symbol character data is transmitted from the I/O subsystem  627  to the host system. If, however, at Block D a bar code symbol is not decodable in the digital image, then control subsystem  630  determines at Block F whether or not the maximum scan attempt threshold has been accomplished, and if not, then the system controller returns to Block B, and resumes the flow as indicated. However, if at Block F, control subsystem  630  determines that the maximum scan attempt threshold has been reached, then control subsystem  630  proceeds to Block G, and sends a failure to decode notification (i.e. “no read” operation) to the operator, and the system returns to Block B, as shown in  FIG. 15 . 
     The above method of imaging-based based bar code symbol reading and control of operation is carried out in an automated manner, within the bar code symbol reader  600 , wholly transparent to the operator who is holding the system in his or her hand. 
     Summary of Predictive Diagnostics Supported in Illustrative Embodiment of Hybrid Digital Imaging and Laser Scanning System 
     Scanner Module Involved: Predictive Activity (Error Event Type) 
     
         
         Imager/System: Imager takes a picture of clean windows and stores as a reference for determining when the window needs cleaning. 
         Imager/System: Sense imaging LED current and compare to baseline current expected to warn maintenance personnel of potential failure. 
         Imager/System: Use imager to sense scan pattern to see if any lasers are out or weak. 
         Imager/System: Flag imager communication degradation by main microprocessor. 
         Imager/System: Use decode time as a prediction of dirty window or illumination issues 
         Imager/System: Use increased decode time on specific codes along with server interaction to notify of potential scanner issues 
         Imager/System: Use image acquired during scale zero to notify of incorrect zeroing operation. Neither the scanner nor scale really knows exactly what zero is but an image can determine that it was done incorrectly. 
         Imager/System: Use image acquired on no reads to diagnose improper operation (bar code is covered or obstructed whereby a special beep is sounded). If the item still is not scanned, the image is saved to further prove incorrect scanning technique, illegal activity by the cashier, poorly printed barcodes by the manufacturer, etc. etc. 
         Imager/System: Use Imager as backup to predict wake-up sensor is failing (i.e. digital imager is used more often than the IR-based wake-up sensor). 
         Laser Scanner Only: Sensing warning current of lasers for potential issues 
         Laser Scanner Only: Sensing warning current of motors for potential issues 
         Laser Scanner Only: Sensing poor scanning as a window or laser issue. 
         System: Monitor total current on initial surge and also quiescent operation for change in levels previously stored as max surge and quiescent normal current levels. Detect encroaching on fatal operating areas. 
         System: Sense change in current of all local and auxiliary devices to predict issues. 
         System/Scale: Sensing number of zero button presses as a prediction of scale needing it too often. Other things can be implied here besides the scale really needing zero such as cashier playing too much with the zero push button switch, an intermittent switch, etc. 
         System Hardware: Sensing extremely short button presses as a predictor of potential button failures. The switch signals are too short to be real or too long (button or switch sticking). 
         Wake-up System: Use fact that switch button wakeup is initiated repetitively to flag potential wake up sensor issues. 
         System/Scale: Using last calibration date as predictor of scale maintenance needs. 
         Scale: Scale calibration prediction diagnostics by sensing scale zero drift. 
         Scale: Sense metrology numbers to diagnose improper scale operation.
 
Method of Generating Predictive Error Events (PEE) and Predictive Error Alerts (PEA) from Hybrid (Digital Imaging/Laser) Scanning Systems or Laser Scanning Systems on a Retailer Information Network
 
       
    
     With reference to  FIGS. 16A and 16B , it is appropriate now to describe a novel illustrative embodiment of a method of detecting predictive error events (PEE) within laser scanning and digital imaging scanning systems in general, and hybrid-type bar code symbol reading systems in particular, and generating predictive error alerts (PEA) within POS stations in the retailer information network  1 . An example of the type of PEE type events the method is capable of detecting is described in the table set forth above, for purposes of illustration, not limitation, and the method is described in the flow chart set forth in  FIGS. 16A and 16B . 
     As indicated at Block A in  FIG. 16A , the system controller determines whether or not a predictive error event (PEE) within the bar code symbol reading system has occurred. 
     When a PEE is detected at Block A in  FIG. 16 , then at Block B the bar code symbol reading system generates a predictive error event (PEE). 
     As indicated at Block C in  FIG. 16A , the predictive error event (PEE) is embedded with a time-stamp, event type, event number, parameter current and limits, and then stored in the local PEE database  905  in the bar code symbol reading system. 
     As indicated at Block D, the system controller determines whether or not a local predictive error event (PEE) has exceeded preset limits (e.g. first, second error limits). If the preset limits have not been exceeded, then at Block E, the bar code symbol reading system waits for more predictive error events (PEEs) to occur. If the preset limits have been exceeded at Block D, then the bar code symbol reading system proceeds to Block F, where the bar code symbol reading system transmits predictive error event (PEE) alert to the POS cash register computer system. 
     As indicated at Block G in  FIG. 16B , the POS cash register computer system receives and relays the predictive error event alert (PEA) data package, to the back room POS information server  960 . 
     At Block H, the POS information server  960  receives and logs the PEA data package to the PEE database maintained by and/or within the POS information server  960 . 
     At Block I, the POS information server determines whether or not the received predictive error event (PEE) warrants immediate action (i.e. whether or not the data values exceed set thresholds, and further action is triggered. If immediate action is warranted at Block I, then at Block J, the POS information server  960  generates a predictive error event (PEE) alert document, and server  960  or  970  transmit this PEE alert document (e.g. .pdf formatted document) by email or instant messaging or other electronic techniques, to all members on the group contact list involved in facilitating maintenance action on that alert. One of the members of that group could be the cashier. In that case, the predictive error alert (PEA) is sent back to the POS cash register system  930  to alert the cashier to take action (e.g. cleaning of a scanning window, etc.) if the cashier is not one of the members of that particular predictive error alert group, then the alert is passed onto other members via the POS Server  960  by the generation and transmission of emails, instant messages and/or other electronic communication. The predictive error event alert document could include, for example: an instruction to the cashier to clean the scanning window, a notification to the supervisor informing that the cashier is not scanning items at all or improperly, an alert to the store maintenance manager to do make predictive replacement before failures occur, an alert to the store manager regarding barcode integrity issues and for vendors take corrective action, or an alert to corporate officers informing the number and type of alerts that occur at this particular store. 
     If immediate action is not warranted at Block I, then at Block K the POS information server  960  waits for the next predictive error event (PEE) package to be transmitted from a POS cash register computer system deployed on the retailer information network. 
     Method of Predicting Error Event Detection and Alert Generation Using Scale Calibration Diagnostics that Senses Scale Zero Drift 
     Referring now to  FIGS. 17A, 17B and 17C , methods for predictive error events involving scale calibration will now be described in detail. 
     In general, metrology is a system of measurement, and an electronic weigh scale subsystem  22  provided in hybrid bar code symbol reading system  100  does not work from number 0 to a max number (say 99999) when weighing an item. Rather, the electronic weigh scale  22  needs to be ‘calibrated’, whereby ‘scale at zero’ is ‘marked’ at a certain point above the zero number on the range, using the scale platter as an offset weight. Then a ‘calibrated’ weight is added to the scale weigh platter, representing the max range of the scale (in our case this is 30 lbs or 15 kgs). That number is now ‘marked’ or saved in configuration of the scale as a representation of the maximum weight. On power up, the scale ‘marks’ a temporary new “zero” spot along its dynamic working range. The number that the scale is currently using to represent “zero” weight is a telltale parameter, or indicator, of a ‘creeping’ predictive error. Also, a second part of metrology involves checking the current metrology number against the number that was marked at power up, whenever the scale indicates that it has a zero status bit set. The zero status bit, in conjunction with the current metrology number, is also a ‘telltale’ sign of something that may cause a problem. 
     Method of Predicting Scale Metrology Errors by Monitoring Drifts in Electronic Scale Zero Values 
     The flow chart set forth in  FIG. 17A  describes a method of monitoring predictive scale metrology errors, due to zero scale zero drift, carried out as part of a ‘normal’ control loop operating within the bi-optic scanner and scale system  100 , or  400 , or functional equivalent. 
     As indicated at Block A in  FIG. 17A , the bi-optical scanner/scale system enters the control loop. At Block B, the system controller determines whether or not the scale is currently at zero status. The metrology measurement cannot be taken when the scale is somewhere above zero. If the scale is not at zero status at Block B, then the system proceeds to Block F and moves onto monitoring the next control item. If the scale is at zero status at Block B, then the system proceeds to Block C. 
     As indicated at Block C in  FIG. 17A , the system controller gets/retrieves the calibrated, current and power-up metrology numbers representing a zero weight status in the electronic scale subsystem  22 . 
     At Block D in  FIG. 17A , the system controller determines whether or not (i) the difference between the calibrated and power up zero metrology numbers, or (ii) the difference between the calibrated and current zero metrology numbers, or (iii) the difference between the power up and current zero scale-metrology numbers, exceeds a pre-programmed limit. If the difference is less than the allowed pre-programmed threshold, then the system controller advances to Block F to review and handle the next control item, as shown in  FIG. 17A . If the difference is greater than the allowed preprogrammed threshold, then the system controller proceeds to Block E and generates and stores a predictive error event (PEE) in the local PEE database  905  for the zero scale-metrology. If local PEE limits are exceeded, then the PEE record is transmitted upstream to the POS cash register computer system  930 , and then re-transmitted to the POS server  960  for storage in the remote PEE database, and subsequent processing. If thresholds are exceeded, the POS server generates and transmits a PEE alert (PEA) to both management and maintenance to inspect the system, and to analyze and recalibrate the scale, if necessary. 
     At Block F, the system proceeds onto the next control process item maintained within the system. 
     Method of Monitoring Predictive Scale Metrology Errors, Due to Scale Operation Error 
     Metrology was explained in the previous section. When the scale is calibrated, both the new zero weight and the maximum weight spots on the analog scale are ‘marked’ or saved in configuration. The scale zero point changes with another scale power up, or when manually zeroing the scale. The maximum range spot is only ‘virtually’ adjusted, that is, since the calibrated weight is not available, the scale assumes where the max spot is, based on the changing new zero spot. In some scales, the max spot stays the same until recalibrated. Regardless of the manner in which data is saved, improper operation or the prediction that the scale will be soon entering an improper operational area, can be determined. 
     The key to being able to determine improper operation of the scale is first to save the zero and max spots as the scale is being calibrated, or to later retrieve them from the scale, when available. The scanner and scale system  100  now has reference points to determine questionable operation. As the scale is being used in normal operation, the weights naturally are transmitted through the scanner in the ‘single cable mode’ of the scanner and scale operation. Since this mode has only one cable, both the scanner and scale operation pass through the scanner on the way to the POS cash register. The scanner system now keeps a record of the metrology points whenever the scale returns a substantial weight. The metrology points can be requested of the scale right after a weight is returned. The scanner ‘PLOTS’ the returned metrological measurement. Whenever the error (i.e. delta away from normal path) surpasses a pre-programmed limit, the scanner generates a ‘predictive error event (PEE)’ indicating that the scale operation is questionable and should be checked and/or recalibrated. 
     The flow chart set forth in  FIGS. 17B and 17C  describes a method of monitoring predictive scale-metrology errors, due to scale operation error, carried out as part of a ‘normal’ control loop operating within the bi-optic scanner and scale system  100 , or  400 , or functional equivalent. 
     As indicated at Block A in  FIG. 17B , the bi-optical scanner and scale system enters the control loop. At Block B, the system controller determines whether or not the scale weight is currently substantial (i.e. non-zero). If the scale is at zero status or the weight is steady and NOT determined to be not substantial, then the system proceeds to Block F and moves onto monitoring the next control item. If the scale is above zero status and the weight is steady and determined to be substantial, then the system proceeds to Block C. 
     As indicated at Block C in  FIG. 17B , the system controller gets the current metrology number from the electronic scale, representing a substantial weight, whenever the scale returns a weight greater than a pre-programmed value. The metrology measurement cannot be taken when the scale is somewhere near zero, as the operational error will be too small. As shown in  FIG. 17C , the metrology number, representing a substantial weight, is plotted on a virtual operational graph with the zero and max points representing where the weights should be traveling along. 
     At Block D in  FIG. 17B , the system controller determines whether or not the deviation between (i) metrology weight and (ii) the calculated weight, from the normal curve illustrated in  FIG. 17C , is greater than the allowed threshold. If the distance (delta or deviation) from the ideal operational line is less than a pre-programmed threshold or limit, then the system controller advances to Block F to look at the next control item in  FIG. 17B , as shown. If the deviation is greater than the allowed threshold, then the system controller proceeds to Block E and generates and stores a predictive error event (PEE) in the local PEE database  905  for the scale operation, and this PEE remains active until it is automatically-cleared, manually cleared, or the electronic weigh scale is recalibrated. If local PEE limits are exceeded, then the PEE record is transmitted upstream to the POS cash register computer system  930 , and then re-transmitted to the POS server  960  for storage in the remote PEE database, and subsequent processing. If thresholds are exceeded, the POS server generates and transmits a PEE alert (PEA) to both management and maintenance to inspect the system, and analyze and recalibrate the scale, if and as necessary. 
     At Block F, the system proceeds onto the next control process item maintained within the system. 
     Method of Predicting Scale Metrology Errors by Monitoring Scale Out of Calibration Activity 
     Whenever the electronic scale is calibrated, the current date and time is stamped into the event data stored within the scanner/scale system  100 ,  400 . As the system is programmed to support many monitoring functions, it searches for a calibration date that is getting older measured using the real-time clock maintained within the system. When a pre-programmed limit is reached on scale calibration age, the system automatically generates a predictive error event (PEE) indicating that the scale operation is now questionable as it is out of calibration based on the time that has passed since the last calibration. 
     The flow chart set forth in  FIG. 17D  describes a method of monitoring predictive scale calibration errors, due to the age of scale calibration, carried out as part of a ‘normal’ control loop operating within the bi-optic scanner and scale system  100 , or  400 , or functional equivalent. 
     As indicated at Block A in  FIG. 17D , the bi-optical scanner/scale system enters the control loop. 
     At Block B, the system controller gets the real time clock time values and date information, and date and time of the last calibration. 
     At Block C in  FIG. 17D , the system controller compares the two time stamps, and determines whether or not the difference between (i) current date and time, and (ii) the date and time of last calibration, is greater than the allowed threshold, predicting that the electronic weigh scale is out of calibration based on time and date measurements. If the difference is less than the allowed threshold, then the system controller proceeds to Block E and moves onto the next control process. If the deviation is greater than the allowed threshold, then the system controller proceeds to Block D and generates and stores a predictive error event (PEE) in the local PEE database or data store  905  for the scale calibration, and this PEE event remains active until it is automatically-cleared, manually cleared, or the electronic weigh scale is recalibrated. If local PEE limits are exceeded, then the PEE record is transmitted upstream to the POS cash register computer system  930 , and then re-transmitted to the POS server  960  for storage in the remote PEE database, and subsequent processing. If thresholds are exceeded, the POS server generates and transmits a PEE alert (PEA) to both management and maintenance to inspect the system, and analyze and recalibrate the scale, if and as necessary. 
     At Block E, the system proceeds onto the next control process item maintained within the system. 
     Method of Predicting System Error Events, by Monitoring Changes in the Electrical Current Flowing Through all Local and Auxiliary Devices 
     Today, many electronic system designs are carried out with an energy-conservation initiative in mind That is, designs are trying to do the most with as few resources as possible. One of those resources is the electrical current used in powering the scanner/scale system, including any device attachments connected to the scanner/scale system. 
     To facilitate monitoring of electrical current drawn by each device associated with the bar codes symbol reading systems disclosed herein, a current measuring circuit is employed at every place on the printed circuit board that feeds current to these devices within the system. These inputs can be multiplexed so that one digital representation is received from all devices over the same I/O line to the main processor. Then, the system monitors the devices (present in its configuration) with respect to using little or excessive current to power that device. When a pre-programmed current limit is observed, for a given device, the scanning system generates a ‘predictive error’ indicating that targeted device is operating in a warning area of electrical current usage. Two different methods of predictive error event generation are disclosed in  FIGS. 18A and 18B , using two different kinds of warning current ranges for two different kinds of system operation (i.e. normal operation mode, and power-save operation mode, respectively). 
     The flow chart set forth in  FIG. 18A  illustrates scanner/scale system monitoring the electrical current consumed by its devices, and whether or not current usage operates outside the warning range of normal operation, allotted for that device, where values of measured current falling in the warning range is questionable but not fatal. A predictive error event (PEE) occurs whenever any device operates outside those bounds, or “warning areas&#39; (i.e. not fatal ranges of normal operation). The aim of the present method is to detect these ‘warning areas” and command action before failure events actually occur. 
     As indicated at Block A in  FIG. 18A , the bi-optical scanner/scale system enters the control loop. 
     At Block B, the system controller gets the electrical current usage readings from all available local and auxiliary devices within the system. 
     At Block C in  FIG. 18A , the system controller determines whether the electrical current usage reading for each device exceeds or is much less than the preprogrammed limit window set for each device. If the current usage values are within the preprogrammed window, then the system controller proceeds to Block E and moves onto the next control process. 
     If the electrical current usage reading for a given device does exceed its preprogrammed window, then the system controller proceeds to Block D in  FIG. 18A  and generates and stores a predictive error event (PEE) in the local PEE database  905 , for electrical current usage outside each device&#39;s preprogrammed threshold limits, and this PEE remains active until it is automatically-cleared, manually cleared, or the device has maintenance performed on it or is replaced. If local PEE limits are exceeded, then the PEE record is transmitted upstream to the POS cash register computer system  930 , and then re-transmitted to the POS server  960  for storage in the remote PEE database, and subsequent processing. If thresholds are exceeded, the POS server generates and transmits a PEE alert (PEA) to both management and maintenance to inspect the system, and analyze the faulty device or the scanner system itself, and replace it if and as necessary. 
     At Block E, the system proceeds onto the next control process item maintained within the system. 
     Method of Predictive Error Event Detection Process for all Devices Using Warning Power-Save Current Range, where the Warning Power-Save Range is Questionable but not Fatal 
     The flow chart set forth in  FIG. 18B  illustrates scanner/scale system monitoring the electrical current consumed by its devices, and whether or not current usage operates outside the warning “power-save” range of operation, allotted for that device, where values of measured current falling in the warning “power-save” range is questionable but not fatal. A predictive error event (PEE) occurs whenever any device operates outside those bounds, or “warning areas’ (i.e. not fatal ranges of power-save operation). The aim of the present method is to detect these ‘warning areas” and command action before failure events actually occur. 
     As indicated at Block A in  FIG. 18B , the bi-optical scanner/scale system enters the control loop. 
     At Block B in  FIG. 18B , the system controller gets the electrical current usage readings from all available local and auxiliary devices within the system. 
     At Block C in  FIG. 18B , the system controller determines whether the electrical current usage reading for each device exceeds or is much less than the preprogrammed safe “power-save” current limit window set for each device. If the current usage values are within the preprogrammed power-save current window, then the system controller proceeds to Block E and moves onto the next control process. 
     If the electrical current usage reading for a given device does exceed its preprogrammed window, then the system controller proceeds to Block D in  FIG. 18B  and generates and stores a predictive error event (PEE) in the local PEE database  905 , for electrical current usage outside each device&#39;s preprogrammed threshold limits, and this PEE remains active until it is automatically-cleared, manually cleared, or the device has maintenance performed on it or is replaced. If local PEE limits are exceeded, then the PEE record is transmitted upstream to the POS cash register computer system  930 , and then re-transmitted to the POS server  960  for storage in the remote PEE database, and subsequent processing. If thresholds are exceeded, the POS server generates and transmits a PEE alert (PEA) to both management and maintenance to inspect the system, and analyze the faulty device or the scanner system itself, and replace it if and as necessary. 
     At Block E in  FIG. 18B , the system proceeds onto the next control process item maintained within the system. 
     Method of Predicting Wake-Up Sensor Error Activity by Monitoring Wake-Up Switch Events 
     The hybrid bi-optic system  100  has a ‘sleep mode’ whereby its lasers, motors, and other non-essential current using devices are deactivated (i.e. de-energized) after a pre-programmed time period in order to save electrical power. While such function can be thought of as an energy-savings feature, the actual system benefits by minimizing electrical power consumption is to increase the lifetime of the system and its components. In the bi-optic scanning systems  100  and  400 , a push button switch  67 B is provided on the system housing that is used to multiplex a number of differently programmed functions. Two such functions would include: (i) inducing the scanning system into its power-saving “sleep mode” by depressing the manual button switch  67 B for an extended period of time; and waking the system up from its power-saving “sleep mode” by depressing the button switch for a shorter period of time. Each of these functions are counted and logged by the system. This use of the switch to wake-up the scanner could be a signal that the normal method of waking up the scanner, namely the IR or photo-transistor detector, is failing. 
     Excessive use of the push-button switch  67 B could be a warning or predictor that normal IR wake-up sensor circuit  67 A in the system  100  is not working properly, and therefore, the cashier is using the push-button switch to manually control the sleep mode of the system. When depression of the push-button switch is detected a predetermined number of times in a row, when the IR-wake-up sensor or digital imaging is activated for wake-up sensing, the system automatically generates a predictive error event (PEE) and corresponding alert, signaling to the operator that the push-button switch  67 B is being used excessively and that the IR or photo-transistor functionality of the IR wake-up sensor circuit  67 A requires inspection and/or maintenance. 
     The flow chart set forth in  FIG. 19A  illustrates system monitoring and tracking of the number of time the wake-up button switch  67 B is used instead of the IR wake-up sensor circuit  67 A, during the system wake-up process. A predictive error event (PEE) occurs whenever the system operates outside of pre-programmed bounds, or “warning areas’, regarding system wake up using the manually-triggered wake-up switch  67 B, instead of using the automatic IR wake-up sensor circuit  67 A. The aim of the present method is to detect these ‘warning areas” and command action before failure events actually occur. 
     As indicated at Block A in  FIG. 19A , the bi-optical bar code symbol reading system enters the control loop. 
     At Block B in  FIG. 19A , the system controller tracks the number of times the manually-triggered wake-up switch  67 B is depressed during the wake-up process, rather than the IR wake-up sensor circuit  67 A. 
     At Block C in  FIG. 19A , the system controller determines whether the number of times the manually-triggered wake-up switch  67 B is depressed, relative to the IR wake-up sensor  67 A usage, exceeds the preprogrammed limit set for the system. If the usage values do not exceed the preprogrammed thresholds, then the system controller proceeds to Block E and moves onto the next control process. 
     If the switch is used an excessive number of times, then the system controller proceeds to Block D in  FIG. 19A  and generates and stores predictive error event (PEE) in the local PEE database  905 , for excessive use of the switch outside system&#39;s preprogrammed threshold limits and potential problems with the IR wake-up sensor circuit  67 A. This PEE remains active until it is automatically cleared, manually cleared, or the IR wake-up sensor  67 A actually affects system wake-up. If local PEE limits are exceeded, then the PEE record is transmitted upstream to the POS cash register computer system  930 , and then re-transmitted to the POS server  970  for storage in the remote PEE database, and subsequent processing. If thresholds are exceeded, the POS server  960  generates and transmits a PEE alert (PEA) to both management and maintenance to inspect the system, and analyze the faulty wake-up detector device  67 A and replace it if necessary. 
     At Block E in  FIG. 19A , the system proceeds onto the next control process item maintained within the system. 
     Method of Predicting Wake-Up Sensor Error Activity by Monitoring Excessive Usage of Digital Imager Based Wake-Up Sensor 
     In some instances, it may be advantageous for the hybrid bi-optic bar code symbol reading system  100  to be configured so that its digital imaging module  210  is used as a backup to sense the presence of the cashier (by capturing and processing digital video images) and wake-up the system from power save (“sleep”) mode when the cashier is recognized in one or more of the digital images. When the digital-imaging wakeup sensor  67 C is activated, monitoring the system for repetitive activation out of power save mode, instead of the normal use of the IR or photo transistor sensor for the same purpose, it could predict that there may be something failing or about to fail with the operation of the power save wakeup IR or Photo transistor circuit. 
     Excessive reliance on the digital imager-based wake-up detector  16 C could be a warning or predictor that normal IR wake-up sensor circuit  67 A in the system  100  is not working properly, and therefore, the system is relying too much on the supplementary imager detector  16 C to control the sleep mode of the system. When use of the imager detection circuitry is used a predetermined number of times in comparison to the number of times the regular IR-wake-up sensor has been used, the system automatically generates a predictive error event (PEE) and corresponding alert, signaling the network that the imager detector is being used excessively and that the IR or photo-transistor functionality of the regular IR wake-up sensor circuit  67 A probably requires inspection and/or maintenance. 
     The flow chart set forth in  FIG. 19B  illustrates system monitoring and tracking of the number of times the imager detection circuit is used as compared to the IR or photo transistor wake-up sensing circuit  67 A, during the system wake-up process. A predictive error event (PEE) occurs whenever the system operates outside of pre-programmed bounds, or “warning areas”, regarding system wake up using the imager detection circuit automatically triggered wake-up, instead of using the automatic IR wake-up sensor circuit  67 A. The aim of the present method is to detect these ‘warning areas” and command action before failure events actually occur. 
     As indicated at Block A in  FIG. 19B  the bi-optical bar code symbol reading system enters the control loop. 
     At Block B in  FIG. 19B , the system controller tracks the number of times the imager sensor is used to wake up the scanner as opposed to the normal IR or Photo Transistor sensor  67 A. 
     At Block C in  FIG. 19B , the system controller determines whether the number of times the imager sensor had to be used relative to the IR wake-up sensor  67 A usage. If the usage values do not exceed the preprogrammed thresholds, then the system controller proceeds to Block E and moves onto the next control process. 
     If the imager sensor (a secondary backup sensor) is used an excessive number of times, then the system controller proceeds to Block D in  FIG. 19B  and generates and stores predictive error event (PEE) in the local PEE database  905 , for excessive use of the imager-based wake-up sensor  16 C being outside the system&#39;s preprogrammed threshold limits and potential problems with the IR wake-up sensor circuit  67 A, and this PEE remains active until it is automatically-cleared, manually cleared, or the IR wake-up sensor  67 A actually is used more than the imager-based wake-up sensor  16 C for wake-up, usually because system maintenance was performed. If local PEE limits are exceeded, then the PEE record is transmitted upstream to the POS cash register computer system  930 , and then re-transmitted to the POS server  960  for storage in the remote PEE database, and subsequent processing. If thresholds are exceeded, the POS server generates and transmits a PEE alerts (PEA) to both management and maintenance to inspect the system, and analyze the faulty wake-up detector device and replace it if necessary. 
     At Block E in  FIG. 19B , the system proceeds onto the next control process item maintained within the system. 
     Method of Predicting Switch Faults and Reliability by Analyzing Switch Behavior 
     Years ago, systems were designed and built using ‘switch debounce’ circuits inserted between the switches themselves, and the electronics that use them. This was a great help as it provided a ‘dampening’ effect on the signal from the switch contacts. Switch debounce circuits eliminated bouncy electronic noise signals that could cause problems in systems that required clean activations, to prevent discrete circuits from aberrant behavior. However, today, economics have replaced ‘switch debounce’ circuits with software-based filtering solutions that ensure the reliability of mechanical switch function. 
     To facilitate detection of any marginally-faulty push-button switch in the system (including push-button switch  67 B), the switch should be made to generate a diversion, or system interrupt. The switch interruption and handling software module  67 D, implemented on a programmed processor within system  100  or  400 , will be activated when the switch  67 B is engaged (i.e. switched-on event), and also when disengaged (i.e. switched-off event). A general multi-purpose free running timer is used in the switch software. Whenever a switch  67 B changes state, it generates an interrupt and the software ‘marks’ the time of the event. Then all events (i.e. both “switched-on” and “switched-off” events) provide a good indication of how the switch is working mechanically. When the timing between switched-on and switched-off events is too fast, or is sensed as being too long, then such abnormalities can be used to predict an error that the manual switch  67 B will totally fail sometime in the near future. 
     As indicated at Block A in  FIG. 20 , the bi-optical bar code symbol reading system enters the control loop. 
     At Block B, the system controller collects and tracks the latest data from the switch handler software (transferred from Block I). 
     At Block C in  FIG. 20 , the system controller determines whether or not abnormal switch activity exists (relative to predetermined threshold levels). If abnormal switch activity is not detected relative to the preprogrammed thresholds, then the system controller proceeds to Block E and moves onto the next control process. 
     If abnormal switch activity is detected at Block C in  FIG. 20 , then the system controller proceeds to Block D and generates and stores a predictive error event (PEE) in the local PEE database  905 , for abnormal switch activity (i.e. indicative that the switch is in peril of failure), and this PEE remains active until it is automatically-cleared, manually cleared, or the wake-up switch  67 B starts or resumes operating properly. If local PEE limits are exceeded, then the PEE record is transmitted upstream to the POS cash register computer system  930 , and then re-transmitted to the POS server  960  for storage in the remote PEE database, and subsequent processing. If thresholds are exceeded, the POS server generates and transmits a PEE alerts (PEA) to both management and maintenance to inspect the system, and analyze the faulty switch in question and replace it if necessary. 
     At Block E in  FIG. 20 , the system proceeds onto the next control process item maintained within the system. 
     An auxiliary control loop runs between Blocks F through J, while the main control loop from Blocks A through E, operates. 
     As indicated at Block F in  FIG. 20 , when the switch  67 B is activated or deactivated, the switch interrupt and handling software module  67 D within the system  100 , or  400  is automatically entered, on an interrupt basis, and detects the occurrence of each switch event (i.e. switched-on or switched-off event). 
     As indicated at Block G in  FIG. 20 , when the switch  67 B is activated and deactivated (i.e. switched-on or switched-off), the switch handling software  67 D determines abnormal switch timing activity during debounce and analysis (i.e. as the switch goes from active, inactive, active, inactive etc). 
     At Block H in  FIG. 20 , using switch-timing analysis, the control process determines whether or not the switch is acting abnormally. If the switch is acting normally, then the control process proceeds to Block J, and the software continues with normal switch handling, servicing additional switch handling duties. If the switch is acting abnormally, then the control process proceeds to Block I, a flag is sent to the normal control loop, signally that a particular switch is showing signs of possible failure at some future time, a predictive error event (PEE) for abnormal switch activity is generated, and transferred to the main control loop, as shown in  FIG. 20 . Processing now waits for the arrival of the asynchronous control loop to catch the flag during its normal monitoring activities. 
     Method of Predicting Dirty Scan Window Error Activity by Optically Monitoring Scan Quality 
     The method described in  FIGS. 21A through 21D  provides the hybrid digital imaging and scanning system  100 , or digital imaging system  600 , with the capacity to automatically predict when the scanning/imaging window is not sufficiently clean of debris, grime and/or grit, and it should be cleaned to avoid system performance errors, degradation, and/or malfunction. 
     In the illustrative embodiment, the method of detection is the based on the fact that the scanning system maintains information specifying precisely where on each scanning window, the current bar code is located. The system captures and maintains a digital image of the laser scanning pattern projected through each scanning window, each time a bar code is scanned in the 3D scanning volume. The system maintains a history of numbers mapped on a cross-hatched map of the surface area of each scanning window, and signifying degrading contrast or other troubled parameters at each location in the scanning window. Using this technique, the system can determine precisely which surface region of the scanning window requires cleaning. The details of this predictive method will be described in detail hereinbelow with reference to  FIG. 21 . 
     As indicated at Block A in  FIG. 21A , the hybrid system  100  enters its main control loop. 
     As indicated at Block B in  FIG. 21A , for each laser scanning operation, the hybrid system collects digital image data during the projection of laser scanning patterns within the 3D scanning volume, wherein each captured digital image indicates where the bar code is located within the 3D scanning, is projected on the scanning window, and a cross-hatched map is maintained to specify the location of each sub-region of the scanning window, and stores data (e.g. image data and calculated data) for each such window sub-region to quantify the optical properties thereof at spatially-indexed window locations, over a period of time and scanning operations. 
     As indicated at Block C in  FIG. 21A , each captured digital image is analyzed for contrast and other image control parameters, and a number signifying the current image quality is generated for each location on scanning window and saved in memory at the corresponding cross hatched area/region of the scanning window; then to support subsequent operations, the current quality is compared against past quality for each cross-hatched region of the scanning window, and the numbers indicating image quality drift are updated at each cross-hatched region of the scanning window. 
     As indicated at Block D in  FIG. 21A , the hybrid system determines whether or not any region of the scanning window indicate “degrading optical properties” (e.g. dirty window region) based, for example, on a number of scans which exhibit progressively poorer quality images. 
     As indicated at Block E in  FIG. 21A , the hybrid system waits to capture and process the next image of the scanning pattern/scanning window. 
     If any area of a scanning window exhibits degrading optical properties (i.e. constantly drifting in the direction of image quality degradation), then the control system moves to Block F in  FIG. 21B  to generate a Predictive Error Event (PEE). 
     As indicated at Block G in  FIG. 21B , a predictive error event (PEE) record is automatically stored in the local PEE database, and subsequently processed to determine whether or not image degradation is outside the preprogrammed threshold limits, and that potential problems with scanning window clarity should be noted. The PEE remains active until it is automatically-cleared, manually cleared, or the image for that particular area improves above the threshold signifying good scans are now read there. 
     As indicated at Block H, the remote POS Server determines whether or not the local PEE limits and thresholds are exceeded. 
     If PEE limits and thresholds are not exceeded at Block H in  FIG. 21B , then the system proceeds onto control Block E and waits to scan the next bar code symbol, and capture and process digital images at Block B. 
     If the local PEE limits and thresholds are exceeded at Block H, then at Block I the PEE record is transmitted upstream to the POS cash register computer system. 
     As indicated at Block J in  FIG. 21B , the POS cash register computer system relays the PEE record to the POS server for storage in the remote PEE database, and subsequent processing within the POS server. 
     As indicated at Block K in  FIG. 21C , the POS server receives and stores the PEE record in the remote PEE database, for subsequent processing to determine whether or not any PEE records exceed remote PEE thresholds and limits. 
     As indicated at Block L in  FIG. 21C , the remote POS server determines whether or not the remote PEE thresholds and limits exceeded. 
     If at Block L in  FIG. 21C  the remote PEE limits and thresholds are not exceeded, then the POS server proceeds to Block M, and waits to receive and process the next PEE record. 
     If at Block L in  FIG. 21C , the local PEE limits and thresholds are exceeded, then at Block N, the POS server generates and transmits a PEE alert (PEA) to both management and maintenance to alert all parties that subscribe to the (PEA) alerts through the normal notify channels. 
     As indicated at Block O in  FIG. 21C , the POS server posts an alert back to the POS cash register system if the alert is a type that concerns anyone, namely the cashier, at the POS checkout station. If alert is intended to be sent to the POS cash register system (cashier), then it is sent there at this time via connector C. 
     As indicated at Block P in  FIG. 21B , the cashier is provided an opportunity to clean the targeted scanning window using a diagram of the window scanning area that requires cleaning (based on grid map number processing), and then entering a response into the POS cash register computer system that the requested cleaning operations have been performed. 
     As indicated at Block Q in  FIG. 21D , the POS server waits a predetermined period of time for the cashier to perform the requested scanning window cleaning operations, and also an opportunity to validate, through the POS cash register computer system, that the cashier&#39;s duty of cleaning the window of the scanning system has been carried out in a prompt manner. 
     If at Block Q in  FIG. 21D  the window is cleaned in a timely manner by user confirmation given at the POS cash register computer system, then the POS server returns to Block M and waits for the next scanning operation and PEE record generation. 
     If at Block Q in  FIG. 21D  the window is not cleaned in a timely manner, by user confirmation, then the POS Server advances to Block R, and posts another error event on the system, for non-compliance of requested scanning window cleaning by the cashier. This event is directed to the cashier&#39;s supervisor or management thus enforcing compliance of installed service maintenance systems. 
     After Block R in  FIG. 21D , the POS server returns to Block M and waits for the next scanning operation and PEE record generation. 
     While this process has been carried out on the hybrid system  100  described above, it is understood that this process can be carried out using a digital imaging bar code symbol reading system, such as system  600 , to ensure that its imaging windows are maintained in a clean (i.e. optically transparent state) during system operation, to prevent performance degradation or the occurrence of system failure. 
     Method of Predicting Illumination LED Failure by Monitoring LED Current During Digital Imaging Operations 
     The method described in  FIG. 22  provides hybrid digital imaging and scanning system  100 , or digital imaging system  600 , with the capacity to automatically predict when the illumination LEDs, used during digital imaging operations, are close to device failure, degradation, and/or malfunction, and should be serviced before LED failure actually occurs. 
     As indicated at Block A in  FIG. 22 , the scanning system powers up and during the build process, and a “reference measurement” is taken of the electrical current required to drive the illumination LEDs employed by the digital imaging subsystem  210 , as well as lasers and scanning motors employed in the laser scanning subsystems  150 . 
     As indicated at Block B in  FIG. 22 , the scanning system powers up as normal and is operational (i.e. digital imager captures and processes digital images of objects in the FOV and/or the laser scanning subsystem laser scans objects in the 3D scanning volume). 
     At Block C in  FIG. 22 , the digital imaging subsystem captures a digital image of the FOV, the operating current through the illumination LEDs is measured and compared against the reference measurement taken and stored at Block A. 
     As indicated at Block D, a predetermined range of deviation will be allowed between the measured current value and reference measurement. 
     At Block E in  FIG. 22 , an algorithm is run to determine whether or not the deviation between the measured electrical current through the illumination LEDs and the reference measurement, falls outside the pre-set allowed range of deviation. If the deviation does not fall outside the pre-allowed range of deviation, then the system returns to Block C, and captures another digital image, measures the operating current through the illumination LEDS and compares the current measurement against the reference measurement taken and stored in Block A. If the deviation does fall outside the pre-allowed range of deviation, then the system proceeds to Block F, and generates and stores a predictive error event (PEE) in the local PEE database  905  for abnormal electrical current levels through illumination LED. If local PEE limits are exceeded, then the PEE record is transmitted upstream to the POS cash register computer system  930 , and then re-transmitted to the POS server  960  for storage in the remote PEE database, and subsequent processing. If thresholds are exceeded, the POS server generates and transmits a PEE alert (PEA) to both management and maintenance to inspect the system, and analyze the faulty LED circuitry and replace it if necessary. 
     At Block G in  FIG. 22 , the system proceeds to the next control item. 
     Predictive Error Event Detect Process for the Recognition of Damaged and Deformed Products and Barcodes on Those Products 
     In  FIGS. 23A and 23B , a method is described for predicting error events based on the recognition of damaged and deformed consumer products, and barcodes affixed to those products, where, for example, barcodes may be torn, wrinkled, over-printed, under-printed, completely decimated, or just poorly printed. As will be described below, the predictive error detection process is carried out automatically and transparently within the hybrid laser scanning and digital imaging system  100 , or digital imaging system  600 , to predict that certain bar code symbols on certain product items are likely to present difficulty when scanned at POS checkout stations, and to automatically send notification and metrics to retail managers, and other along the supply chain, up to product manufacturers, to perfect and protect the product&#39;s barcode readability. 
     When using the hybrid system  100 , the digital imaging module  210  is used to capture and store a digital image of the product item within the FOV. Typically, the digital image will be triggered by the hybrid bi-optic system  100  in response to the laser scanning subsystem&#39;s difficulty to read a bar code symbol in its 3D scanning volume. After some programmable time, a digital image is automatically triggered and generated by the hybrid scanning/imaging system. The capture digital image contains ‘visual proof’ that the bar code is a difficult one to read in that it appears in the image with along information about the barcode and product. In the event the product item was fully decoded, but took awhile to decode the symbol, the digital image would include, as embedded data, the following data elements: time stamp of image capture; the alpha and/or numbers as decoded by the bar code symbol decode processor; the time to scan/decode; the attempts at scanning/decoding; the information from the store&#39;s database as to the description of the product; and a barcode rating that shows the readability of the barcode by the scanner. Any one of these data items may be in error, or the bar code is shown to be defective. 
     The method described in  FIGS. 23A and 23B  provides the hybrid digital imaging and scanning system  100 , or digital imaging system  600 , with the capacity to automatically predict error events for recognized damaged and deformed products and barcodes on those products. 
     As indicated at Block A, the hybrid bar code symbol reading system captures a digital video image in response to any one of a number of possible ‘system events” that can be produced from a timeout to scan (exceeding a predetermined time duration to decode), image-only scan occurrence, push button activation, or other external command to start data product/code information gathering via digital video imaging. 
     As indicated at Block B, the hybrid system determines whether or not digital image contains minimum components. If the captured digital image does not have minimum components, then the system proceeds to Block C and warns the user/cashier to try to read the bar coded product once again (while the system waits for the next system event to occur). If the captured digital image does have minimum components, then the system proceeds to Block D and the digital image is embedded with the following data elements: its time stamp; time to scan duration; number of scan attempts; bar code rating; etc. 
     At Block E, the product/price database  990  is used to add the following data items to the captured digital of the product/code: decoded bar code symbol character data; database information; decoded thumbnail image; etc. Other customer parameters may be included as part of the configuration of this predictive error event (PEE) based on bar code symbol readability/decodability issues. 
     As an alternative to embedding information within the digital image file at the hybrid system, the ‘package’ of bar code information can be transmitted to the POS cash register computer system, by a driver request, and the information embedded with the captured video images. Also, a video image of the product can also appear on the POS video display along with the product description. This digital image of the product can be useful for the customer, and also hold the cashier accountable, that is, if the customer and management ‘see’ a costly item being scanned, yet a small item (like a pack of gum appears from the product/price database), then something is terribly wrong somewhere. 
     At Block F, the hybrid system then determines whether or not the locally display digital video image show discrepancy. If local digital video image shows discrepancy at Block F, then at Block G the discrepancy is added to the predictive error data package. 
     If the local digital video image does not show discrepancy at Block F, then at Block H, the system determines whether or not a full bar code was decoded. If a full bar code is decoded, then at Block I, the product is added to the transaction at the POS checkout station. 
     If a full bar code is not decoded, the process proceeds to Block J, and PEE data package (e.g. digital video image and embedded data plus any discrepancies) are transmitted to the POS cash register computer  930 , and then the POS cash register computer system transmits the package to the POS information server. The POS information server  960  receives the PEE data package from the POS cash register computer system  930 , and logs the same to the PEE event/problem database  960 . 
     Once PEE data packages start arriving at the POS information server  960  and stored in the event/problem database, the PEEs can be collated according to various criteria, including: (i) by same products that give all checkout lanes same problems during bar code symbol reading—which can point to hard to read bar codes or bar codes that have degraded over time; (ii) by products that gives only one checkout lane problems during bar code symbol reading—which can be construed as a problem with a bar code symbol reading system, a need to clean the POS station, the replacement of a scanner; (iii) by all products coming from a specific location in the retail store (e.g. product codes read in the deli, for example, are becoming harder to read which could alert that the in-house deli printer needs maintenance, e.g. because of “worn print heads” or depleted printer media); and (iv) by particular bar codes that can only be read by the digital imaging subsystem of the hybrid scanner, predicting that the laser scanning subsystem should be scheduled for maintenance testing. 
     At Block L, the POS information server  960  determines whether or not an error limit is exceeded, and if no, then at Block M, the user tries again, or waits for another system event. Also, it could be that the limit of events has not been reached, so the database is left alone until some programmable limit is reached. This limit can also be a daily or weekly report (auto-generated of course) or the fact of reaching the programmable limit. 
     If an error limit is exceeded, then at Block N, the POS server  960 , or  970 , generates a PDF-based predictive error alert (PEA), based on a corresponding PEE, and transmits the PEA message via email or instant message, or other electronic means of notification, to all on the group list to facilitate action. 
     Modifications that Come to Mind 
     All of the methods described above involve “watching” adherence and actions taken on the Predictive Error Alerts (PEAs) posted in the system. If no actions take place in a reasonable timeframe, then additional alerts should be generated to let management know that no action has been taken. This forces compliance to the system. 
     The above-described system and method embodiments have been provided as illustrative examples of how operational performance of POS scanning and checkout systems with bar code symbol reading systems can be significantly improved using local predictive error event (PEE) databases and remote POS information servers processing PEE data packages and sending notifications to technicians and managers assigned to make repairs or performance maintenance operations in response to predictive error alerts (PEAs) and notification. 
     The present invention disclosure has taught, in great detail, how bar code symbol reading systems at a POS scanning and checkout station, can automatically detect predictive error events (PEE) and store them in a local PEE database or data store  905  (e.g. for statistical purposes), and transmitting a PEA data package to the POS cash register computer system, and ultimately to the POS information server  970 , for handling, processing and handling. However, it is understood that the local PEE database  905  can be implemented anywhere within the POS station of the bar code symbol reading (i.e. scanning) system. 
     Although the description above contains much specificity, these should not be construed as limiting the scope of the invention, but as merely providing illustrations of some of the presently preferred embodiments of this invention. All structural and functional equivalents to the elements of the above-described embodiments that are known to those of ordinary skill in the art are expressly incorporated herein by reference and are intended to be encompassed by the accompanying Claims. Variations and modifications to such apparatus and processes will readily occur to those skilled in the art having the benefit of the present disclosure. All such modifications and variations are deemed to be within the scope of the accompanying Claims.