Scanner configuration using advanced data formatting systems and methods

Through advanced data formatting (ADF) technology, the configuration and update process of the scanner is simplified, the problem of scanner configuration complexity in the prior art is solved, and more efficient and flexible scanner and host system compatibility is achieved.

CN119278454APending Publication Date: 2025-01-07ZEBRA TECHNOLOGIES CORP
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202380037802.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2022-05-02
Filing Date
2023-04-27
Publication Date
2025-01-07

AI Technical Summary

Technical Problem

Existing scanners need to be manually configured to accommodate different communication protocols and data formats when they need to be changed or updated, resulting in complexity and inconvenience.

Method used

Adopting Advanced Data Format (ADF) technology, simplifies the configuration and update of the scanner through a graphical user interface or programming system, allows the scanner to operate in multiple modes and change the input source or filter the output if necessary.

Benefits of technology

Simplifies the programming and configuration process of the scanner, reduces memory and processing requirements, supports larger data block processing and search for replacement strings, and improves the compatibility and flexibility of the scanner with the host system.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119278454A_ABST
    Figure CN119278454A_ABST
Patent Text Reader

Abstract

Systems and methods for scanner configuration using advanced data formatting (ADF) are described. Example systems and methods include selecting ADF rules or configuration instructions, options, or features from a GUI. A host application executing on the one or more processors configures the barcode reader based on the selected ADF configuration. The scanner may then be operated or controlled based on the updated ADF configuration.
Need to check novelty before this filing date? Find Prior Art

Description

Background Art

[0001] Conventional scanners are used to scan information for a variety of products, where data may be scanned from bar codes, etc. Such data may be formatted by the scanner before being transmitted to the host application. Each scanner may have a different communication protocol for each cable or communication path, which in turn may require different data formats based on the scanner and / or host application. For example, a given host application may be configured to recognize scans from a specific scanner that uses a specific communication protocol or data format specific to that application. Such software applications and scanners are often fixed in a proprietary manner when they are initially manufactured or installed in the field. As a result, the scanner and host application may be closely related, which requires a proprietary installation for technical and compatibility reasons.

[0002] However, problems arise when a given scanner needs to be changed or updated because the scanner and / or its associated systems typically need to be manually changed, requiring a skilled technician to configure the scanner differently to adapt when the device uses new or different protocols, data communications, and / or other features expected or required by a particular host application or computer system.

[0003] Therefore, there is a need to adapt the configuration of a scanner using advanced data formatting systems and methods, as described herein. Summary of the invention

[0004] User feedback control.

[0005] In one aspect, the present disclosure describes a barcode reader comprising: a housing; an image acquisition component at least partially located within the housing and having a field of view (FOV), the image acquisition component operable to capture image data associated with an environment appearing within the FOV; a user feedback component operable to provide a plurality of user feedback responses; and a controller communicatively coupled to the image acquisition component and the user feedback component, the controller being configured to decode indicia appearing in the image data, wherein: the barcode reader is configurable to operate alternately in one of at least two modes; in a first mode of the at least two modes, the controller is configured to (i) instruct the user feedback component to generate a first type of user feedback response in response to successfully decoding a first type of indicia, and (ii) ) instructs the user feedback component to generate a first type of user feedback response in response to successfully decoding a second type of tag; in a second mode of the at least two modes, the controller is configured to (i) instruct the user feedback component to generate a second type of user feedback response in response to successfully decoding the first type of tag, and (ii) instruct the user feedback component to generate a third type of user feedback response in response to successfully decoding the second type of tag; the first type of tag is different from the second type of tag; the second type of user feedback response is different from the third type of user feedback response; the second type of user feedback response is one that is different from or the same as the first type of user feedback response; and the parameters used to define the first type of tag and the second type of tag are at least one of predefined in the controller or user defined.

[0006] Output asset tracking information.

[0007] In an additional aspect, the present disclosure describes a barcode reader comprising: a housing; an image acquisition component that is at least partially located within the housing and has a field of view (FOV), the image acquisition component being operable to capture image data associated with an environment appearing within the FOV; a memory that stores at least one barcode reader-specific parameter; a communication module that is configured to send data to an external device; a controller that is communicatively coupled to the image acquisition component, the communication module, and the memory, the controller being configured to decode a tag appearing in the image data, wherein: the barcode reader is configured to operate alternately in one of at least two modes; in a first mode of the at least two modes, the controller is configured to transmit a first message to the external device via the communication module in response to successfully decoding the tag in the image data, the first message including at least a portion of a payload associated with the tag and excluding at least one barcode reader-specific parameter; and in a second mode of the at least two modes, the controller is configured to transmit a second message to the external device via the communication module in response to successfully decoding the tag in the image data, the second message including at least a portion of the payload associated with the tag and at least one barcode reader-specific parameter.

[0008] Change the input source.

[0009] In an additional aspect, the present disclosure describes a system comprising: a barcode reader comprising: a barcode reader housing; an image acquisition component at least partially located within the barcode reader housing and having a field of view (FOV), the image acquisition component operable to capture image data associated with an environment appearing within the FOV; a barcode reader communication module, the barcode reader communication module configured to transmit data to an external device; and a barcode reader controller communicatively coupled to the image acquisition component and the communication module, the barcode reader controller configured to decode indicia appearing in the image data; and a printer, the printer comprising: a printer housing; a media processing component configured to process print media according to print instructions; a printer communication module, the printer communication module configured to receive data from another external device; and a printer controller communicatively coupled to the media processing component and the printer communication module, The machine controller is configured to cause the media processing component to process the print medium according to the print instruction, wherein: the barcode reader can be configured to operate alternately in one of at least two modes; in a first mode of the at least two modes, the barcode reader controller is configured to send a first message to an external device via a barcode reader communication module in response to successfully decoding a mark in the image data, the first message including a payload associated with the mark and excluding a command that, if received by the printer, would cause the printer controller to cause the media processing component to process the print medium; and in a second mode of the at least two modes, the barcode reader controller is configured to send a second message to the printer via the barcode reader communication module in response to successfully decoding the mark in the image data, the second message including a payload associated with the mark and a command that causes the printer controller to cause the media processing component to process the print medium based at least in part on the payload associated with the mark.

[0010] A barcode reader, comprising: a barcode reader housing; an image acquisition component, which is at least partially located within the housing and has a field of view (FOV), the image acquisition component is operable to capture image data associated with an environment appearing within the FOV; a barcode reader communication module, the barcode reader communication module is configured to transmit data to an external device; and a barcode reader controller, which is communicatively coupled to the image acquisition component and the communication module, the barcode reader controller is configured to decode indicia appearing in the image data, wherein: the barcode reader can be configured to operate alternately in one of at least two modes; in a first mode of the at least two modes, the barcode reader The code reader controller is configured to: in response to successfully decoding the tag in the image data, send a first message to the external device via the barcode reader communication module, the first message including a payload associated with the tag and excluding commands that, if received by the printer, would cause the printer to process the print medium; and in a second mode of at least two modes, the barcode reader controller is configured to, in response to successfully decoding the tag in the image data, send a second message to the printer via the barcode reader communication module, the second message including a payload associated with the tag and commands that cause the printer to process the print medium based at least in part on the payload associated with the tag.

[0011] If no data is sent to the host, suppress error status feedback (beep, LED, vibration).

[0012] In an additional aspect, the present disclosure describes a barcode reader comprising: a housing; an image acquisition component that is at least partially located within the housing and has a field of view (FOV), the image acquisition component being operable to capture image data associated with an environment appearing within the FOV; a user feedback component that is operable to provide a plurality of user feedback responses; and a controller that is communicatively coupled to the image acquisition component and the user feedback component, the controller being configured to decode indicia appearing in the image data, wherein: the barcode reader can be configured to operate alternately in one of at least two modes; in a first mode of the at least two modes, the controller is configured to (i) indicate to the user feedback component in response to successfully decoding a first type of indicia , generating a first type of user feedback response, and (ii) instructing the user feedback component to generate the first type of user feedback response in response to successfully decoding the second type of tag; in a second mode of the at least two modes, the controller is configured to (i) instruct the user feedback component to generate the second type of user feedback response in response to successfully decoding the first type of tag, and (ii) not generate a user feedback response in response to successfully decoding the second type of tag; the first type of tag is different from the second type of tag; the second type of user feedback response is one that is different from or the same as the first type of user feedback response; and the parameters used to define the first type of tag and the second type of tag are at least one of predefined in the controller or user defined.

[0013] Apply ADF based on source (COM protocol or trigger).

[0014] In additional aspects, the present disclosure describes a barcode reader comprising a barcode reader housing; an image acquisition component that is at least partially located within the barcode reader housing and has a field of view (FOV), the image acquisition component being operable to capture image data associated with an environment present within the FOV; a communication module that is configured to interface with an external host via at least two communication protocols; a memory that stores a plurality of scripts, each of the plurality of scripts defining a configuration set that defines at least one operating parameter of the barcode reader; and a controller that is communicatively coupled to the image acquisition component, the memory, and the communication module, the controller being Configured to decode indicia present in image data, wherein: when the communication module interfaces with an external host, the controller is operable to determine which of at least two communication protocols is used between the bar code reader and the external host; in response to a first of the two communication protocols used between the bar code reader and the external host, the controller executes a first script of a plurality of scripts to configure the bar code reader according to first operating parameters; in response to a second of the two communication protocols used between the bar code reader and the external host, the controller executes a second script of a plurality of scripts to configure the bar code reader according to second operating parameters; and the first script is different from the second script.

[0015] A barcode reader comprises: a barcode reader housing; an image acquisition component at least partially located within the barcode reader housing and having a field of view (FOV), the image acquisition component operable to capture image data associated with an environment present within the FOV; a communication module, the communication module configured to interface with an external host; a memory, the memory storing a plurality of scripts, each of the plurality of scripts defining a configuration set, the configuration set defining at least one operating parameter of the barcode reader; and a controller communicatively coupled to the image acquisition component, the memory, and the communication module, the controller configured to decode indicia present in the image data, wherein: the barcode reader is operable in one of at least two trigger modes; the controller is operable to determine which of the at least two trigger modes is activated; in response to a first trigger mode of the at least two trigger modes being activated, the controller executes a first script of the plurality of scripts to configure the barcode reader according to the first operating parameter; in response to a second trigger mode of the at least two trigger modes being activated, the controller executes a second script of the plurality of scripts to configure the barcode reader according to the second operating parameter; and the first script is different from the second script.

[0016] Filtering Output

[0017] In an additional aspect, the present disclosure describes a barcode reader comprising: a housing; an image acquisition component that is at least partially located within the housing and has a field of view (FOV), the image acquisition component being operable to capture image data associated with an environment appearing within the FOV; a communication module, the communication module being configured to interface with an external host; a controller that is communicatively coupled to the image acquisition component and the communication module, the controller being configured to decode indicia appearing in the image data, wherein: the barcode reader is configurable to operate alternately in one of at least two modes; in a first mode of the at least two modes, the controller is configured to, in response to successfully decoding the indicia, cause the communication module to send a first message to the external host, the first message including an unchanged payload encoded by the indicia; and in a second mode of the at least two modes, the controller is configured to, in response to successfully decoding the indicia, cause the communication module to send a second message to the external host, the second message including a modified payload encoded by the indicia, the modified message excluding at least one character that is at least one of unrecognizable or unacceptable to the external host.

[0018] Replaces data with user-defined characters.

[0019] In an additional aspect, the present disclosure describes a barcode reader comprising: a housing; an image acquisition component that is at least partially located within the housing and has a field of view (FOV), the image acquisition component being operable to capture image data associated with an environment appearing within the FOV; a communication module, the communication module being configured to interface with an external host; a controller that is communicatively coupled to the image acquisition component and the communication module, the controller being configured to decode a tag appearing in the image data, wherein: the barcode reader is configurable to operate alternately in one of at least two modes; in a first mode of the at least two modes, the controller is configured to cause the communication module to send a first message to the external host in response to successfully decoding the tag, the first message including an unchanged payload encoded by the tag; and in a second mode of the at least two modes, the controller is configured to cause the communication module to send a second message to the external host in response to successfully decoding the tag, the second message including an altered payload encoded by the tag, the altered message replacing at least one unprintable character contained in the payload with a corresponding printable character.

[0020] Replaces specified characters in the barcode data with a key sequence from the host computer.

[0021] In an additional aspect, the present disclosure describes a barcode reader comprising: a housing; an image acquisition component that is at least partially located within the housing and has a field of view (FOV), the image acquisition component being operable to capture image data associated with an environment appearing within the FOV; a communication module, the communication module being configured to interface with an external host; a controller that is communicatively coupled to the image acquisition component and the communication module, the controller being configured to decode indicia appearing in the image data, wherein: the barcode reader is configurable to operate alternately in one of at least two modes; in a first mode of the at least two modes, the controller is configured to cause the communication module to send a first message to the external host in response to successfully decoding the indicia, the first message including an unchanged payload encoded by the indicia; and in a second mode of the at least two modes, the controller is configured to cause the communication module to send a second message to the external host in response to successfully decoding the indicia, the second message including an altered payload encoded by the indicia, the altered message replacing at least one unprintable character contained in the payload with a corresponding key sequence.

[0022] The ability to parse out the data associated with the end of a barcode.

[0023] In an additional aspect, the present disclosure describes a barcode reader comprising: a housing; an image acquisition component that is at least partially located within the housing and has a field of view (FOV), the image acquisition component being operable to capture image data associated with an environment appearing within the FOV; a communication module, the communication module being configured to interface with an external host; a controller that is communicatively coupled to the image acquisition component and the communication module, the controller being configured to decode a tag appearing in the image data, wherein: the barcode reader is configurable to operate alternately in one of at least two modes; in a first mode of the at least two modes, the controller is configured to cause the communication module to send a first message to the external host in response to successfully decoding the tag, the first message including an unchanged payload encoded by the tag; and in a second mode of the at least two modes, the controller is configured to cause the communication module to send a second message to the external host in response to successfully decoding the tag, the second message including an altered payload encoded by the tag, the altered message excluding a predefined number of characters, the predefined number of characters appearing at least one of the beginning of a string forming the payload or the end of the string. BRIEF DESCRIPTION OF THE DRAWINGS

[0024] The accompanying drawings, in which like reference numerals represent identical or functionally similar elements throughout the different views, together with the following detailed description, are incorporated into and form a part of the specification and serve to further illustrate aspects of the concepts including the claimed invention and to explain various principles and advantages of those aspects.

[0025] Figure 1A perspective view of an example barcode reader is shown in accordance with various embodiments disclosed herein.

[0026] Figure 2 is a block diagram representing example logic circuitry capable of implementing one or more components of example systems and methods for implementing scanner configuration using advanced data formatting, as described herein.

[0027] Figure 3 is a table representing example audible sequences according to aspects described herein.

[0028] Figure 4 An example configuration graphical user interface (GUI) for scanner configuration using advanced data formatting according to aspects described herein is shown.

[0029] Figure 5 Another example configuration graphical user interface (GUI) for scanner configuration using advanced data formatting according to aspects described herein is shown.

[0030] Figure 6 is a table representing example filtered output data according to aspects described herein.

[0031] Fig. 7A Another example configuration graphical user interface (GUI) for scanner configuration using advanced data formatting according to aspects described herein is shown.

[0032] Figure 7B Another example configuration graphical user interface (GUI) for scanner configuration using advanced data formatting according to aspects described herein is shown.

[0033] Figure 8 An example method for implementing scanner configuration using advanced data formatting, as described herein, is shown.

[0034] Those skilled in the art will appreciate that the elements in the drawings are shown for simplicity and clarity and are not necessarily drawn to scale. For example, the dimensions of some of the elements in the drawings may be exaggerated relative to other elements to help improve understanding of various aspects of the present invention.

[0035] Device and method construction have been represented in the drawings by conventional symbols where appropriate, showing only those specific details relevant to an understanding of the various aspects of the invention so as not to obscure the disclosure with details that would be apparent to one of ordinary skill in the art having the benefit of the description herein. DETAILED DESCRIPTION

[0036] In various aspects, the present disclosure relates to advanced data formatting (ADF), which allows users to easily program, update or configure scanners using a graphical user interface (GUI) or other programming systems and methods. The non-limiting example 123SCAN software provided by ZEBRA TECHNOLOGIESCORPORATION may include an ADF programming utility and / or a related GUI to allow scanner configuration as described herein. Typically, the 123SCAN software is a software program or utility based on MICROSOFT WINDOWS and / or LINUX that has one or more GUIs (e.g., one or more wizards or screens) that simplify the configuration and deployment of a barcode reader. The 123SCAN software can automatically detect a barcode reader or other data capture device, and then the GUI can be launched to guide the user through the configuration process of the barcode reader. In addition, the 123SCAN software can update firmware, set up or prepare (stage) a large number of devices, display barcode data and images, and generate reports. It should be understood that the 123SCAN software is only one example and that scanner configuration using Advanced Data Formatting (ADF) may be implemented by software or computing instructions executed on a host computer or system for configuring a barcode reader (e.g., as described herein). Figure 1 and 2 or described elsewhere herein). More generally, scanner configuration can also be accomplished by scanning a barcode containing setup information. These barcodes can come from a printed manual or be generated by a program executed on a host computer.

[0037] Figure 1 A perspective view of an example barcode reader 100 is shown in accordance with various embodiments disclosed herein. The barcode reader 100 may also be referred to herein as a "scanning device," "scanner device," or simply a "scanner." Additionally, in various aspects, the barcode reader may include a barcode scanner, an RFID reader, and / or a data input device for scanning or reading scanned data as described herein. The barcode reader 100 may include a housing or portion (e.g., a molded portion) covering its various components. In various aspects, the housing may be ergonomic to fit a user's hand (e.g., may include a handle with a trigger).

[0038] The barcode reader 100 includes an image acquisition component 102 having a scanning window 104. The image acquisition component 102 may include an image sensor, which may include a plurality of photosensitive elements. The photosensitive elements may be arranged in a pattern and may form a substantially flat surface. For example, the photosensitive elements may be arranged in a grid or a series of arrays forming a 2D surface. The image sensor of the image acquisition component 102 may have an imaging axis extending through the scanning window 104 for capturing or scanning scan data (e.g., such as a 1D or 2D image that may include a barcode, QR code, etc.).

[0039] The image acquisition component 102 can have an effective read range defined by the image sensor, for example, the effective read range can correspond to the physical range of the laser or other optical wavelength projected by the image sensor. The image acquisition component 102 can also have an optical field of view (FOV) defined by the image sensor and adapted to the scanning window 104. For example, the optical FOV can be shaped by the effective read range of the image sensor and configured to extend through the opening defined by the scanning window 104. In some embodiments, the imaging axis of the image sensor can be coaxial with the optical FOV, wherein each imaging axis can extend through the scanning window 104. The image acquisition component 102 can be used to capture image data associated with the environment appearing within the FOV.

[0040] exist Figure 1 In an example aspect of the invention, the barcode reader 100 further includes an RFID reader 112. The RFID reader 112 includes an RFID radio antenna configured to emit an RFID-based radiation pattern (e.g., a radio frequency RF field of view). In certain modes, the RFID reader 112 can be used to automatically read RFID tags within the radiation pattern emitted by the RFID reader 112. In some embodiments, the RFID reader can be an ultra-high frequency (UHF) RFID reader.

[0041] The barcode reader 100 further includes a trigger 108. In some embodiments, the trigger 108 can activate each of the image acquisition component 102 and the RFID tag reader 112 together. In other embodiments, the trigger 108 can be configured to at least initially activate one of the image acquisition component 102 or the RFID tag reader 112, wherein, for example, the top of the trigger 108 activates the image acquisition component 102 and the bottom of the trigger 108 activates the RFID tag reader 112, or vice versa. However, it should be understood that activation of the image acquisition component 102 and / or the RFID reader 112 need not be achieved solely by the trigger 108, and the barcode reader 100 can also be operated in a "hands-free" mode, wherein activation of the image acquisition component 102 and / or the RFID reader 112 can be achieved when a product is detected in the vicinity, field of view, effective reading range, etc. of the barcode reader 100.

[0042] In various aspects, activation of the image acquisition component 102 (e.g., via the trigger 108) can cause the image acquisition component 102 to capture scan data (e.g., image data or information). Such scan data or information may include, for example, a product code (e.g., a barcode or QR code) associated with a corresponding product. In other embodiments, the data or information may include signature information or data.

[0043] Similarly, activation of the RFID reader 112 (e.g., via the trigger 108) can cause the RFID reader 112 to capture tag data or other such information. Such tag data or other information can be encoded, for example, on one or more RFID tags associated with one or more corresponding products.

[0044] Data or information captured from the image acquisition component 102 and / or the RFID reader 112 may be transmitted to a host computer (e.g., such as a host personal computer (PC)), server, or other processing device (e.g., Figure 2 The barcode reader 100 may include a wiring interface 110 for transmitting such data or information, which may include an interface for connecting to an input / output (I / O) interface (e.g., I / O interface 208) of a computer system. In various embodiments, the barcode reader may support a number of data transmission interfaces, including, for example, the USB standard, keyboard emulation, Bluetooth standard, standard RS-232, IBM 468X / 469X protocol, simple serial interface (SSI) protocol, or other similar data transmission interfaces and / or data transmission standards or protocols.

[0045] The barcode reader 100 may also include a processor (e.g., Figure 2 A processor in (a processor of) processor(s) 202) for implementing scanner configuration using advanced data formatting as described herein.

[0046] Figure 2 is a block diagram representing example logic circuitry capable of implementing one or more components of example systems and methods for implementing scanner configuration using advanced data formatting, as described herein. Figure 2 An example logic circuit is a processing platform 200 (e.g., a host computer and / or a barcode reader including one or more processors and one or more memories) that is capable of executing instructions to, for example, implement the operations of the example methods described herein as represented by the flowcharts of the accompanying figures of this specification. Other example logic circuits capable of, for example, implementing the operations of the example methods described herein include field programmable gate arrays (FPGAs) and application specific integrated circuits (ASICs). Figure 2 The block diagram may include components configured inside the barcode reader 100. Additionally or alternatively, the barcode reader 100 may include components remote from the barcode reader 100. For example, Figure 2 The block diagram may include an external host computer or host device that is remote from or external to the barcode reader 100. Further, Figure 2 The components of the logic circuit can be connected to a printer (not shown). The printer can include a printer housing, a media processing component configured to process print media according to the print instructions, a printer communication module configured to receive data from another external device, and a printer controller communicatively coupled to the media processing component and the printer communication module. The printer controller can be configured to cause the media processing component to process the print media according to the print instructions.

[0047] Figure 2 The example processing platform 200 includes one or more processors 202, such as, for example, one or more microprocessors, controllers, and / or any suitable type of processor. Figure 2 The example processing platform 200 includes one or more memories 204 (e.g., volatile memory, non-volatile memory) that are accessible by one or more processors 202 (e.g., via a memory controller). The example processor(s) or controller 202 interact with the memory 204 to obtain, for example, machine-readable instructions stored in the memory 204, the machine-readable instructions corresponding to, for example, the operations represented by the flowcharts of the present disclosure. Additionally or alternatively, the machine-readable instructions corresponding to the example operations described herein may be stored on one or more removable media (e.g., compact disks, digital versatile disks, removable flash memory, etc.), which may be coupled to the processing platform 200 to provide access to the machine-readable instructions stored thereon.

[0048] Figure 2 The example processing platform 200 also includes a network interface 206 to enable communication with other machines via, for example, one or more networks. The example network interface 206 includes any suitable type of communication interface(s) (e.g., wired and / or wireless interfaces) configured to operate according to any suitable protocol(s).

[0049] Figure 2 The example processing platform 200 also includes an input / output (I / O) interface 208 to receive user input and transmit output data to a barcode reader (e.g., barcode reader 100) and / or a user via a user input / output interface (e.g., a keypad, a keyboard, a touchpad, a button interface, a display, or user feedback). The feedback may be feedback provided by the barcode reader 100, wherein such feedback includes an LED, an auditory feedback, and / or a GUI feedback or other feedback associated with the barcode reader 100.

[0050] The above description relates to the block diagram of the accompanying drawings. The alternative implementation of the example represented by the block diagram includes one or more additional or alternative elements, processes and / or devices. Additionally or alternatively, one or more of the example boxes in the figure can be combined, divided, rearranged or omitted. The components represented by the boxes in the figure are implemented by hardware, software, firmware and / or any combination of hardware, software and / or firmware. In some examples, at least one of the components represented by the box is implemented by a logic circuit. As used herein, the term "logic circuit" is explicitly defined as a physical device including at least one hardware component, which is configured (for example, via an operation based on a predetermined configuration and / or via the execution of a stored machine-readable instruction) to control one or more machines and / or perform the operation of one or more machines. Examples of logic circuits include one or more processors, one or more coprocessors, one or more microprocessors, one or more controllers, one or more digital signal processors (DSPs), one or more application-specific integrated circuits (ASICs), one or more field programmable gate arrays (FPGAs), one or more microcontroller units (MCUs), one or more hardware accelerators, one or more dedicated computer chips, and one or more system-on-chip (SoC) devices. Some example logic circuits, such as ASICs or FPGAs, are specially configured hardware for performing operations (e.g., one or more of the operations described herein and represented by flowcharts (if any) of the present disclosure). Some example logic circuits are hardware that executes machine-readable instructions to perform operations (e.g., one or more of the operations described herein and represented by flowcharts (if any) of the present disclosure). Some example logic circuits include a combination of specially configured hardware and hardware that executes machine-readable instructions. The above description relates to various operations described herein and flowcharts that may be attached to this document to illustrate the flow of those operations. Any such flowchart represents an example method disclosed herein. In some examples, the method represented by the flowchart implements the device represented by the block diagram. Alternative implementations of the example methods disclosed herein may include additional or alternative operations. In addition, the operations of the alternative implementations of the methods disclosed herein may be combined, divided, rearranged, or omitted. In some examples, the operations described herein are implemented by machine-readable instructions (e.g., software and / or firmware) stored on a medium (e.g., a tangible machine-readable medium) for execution by one or more logic circuits (e.g., (multiple) processors). In some examples, the operations described herein are implemented by one or more configurations of one or more specially designed logic circuits (e.g., ASIC(s)). In some examples, the operations described herein are implemented by a combination of specially designed logic circuit(s) and machine-readable instructions stored on a medium (e.g., a tangible machine-readable medium) for execution by the logic circuit(s).

[0051] Various example systems and methods for implementing scanner configuration using advanced data formatting are described below. For example, Figure 8 An example method 800 for implementing scanner configuration using advanced data formatting is shown, as described herein. At box 802, a user may select an ADF rule or configuration instruction, option, or feature (e.g., from a GUI). At box 804, a host application (e.g., executed on (multiple) processors 202) may configure a barcode reader (e.g., barcode reader 101) based on the selected ADF configuration. Configuration may include updating a driver and / or firmware of the barcode reader with the ADF rule or instruction, for example, to configure the barcode reader to perform one or more actions. In various aspects, a scanner may be programmed or configured by scanning one or more 1D barcodes, 2D barcodes. Additionally or alternatively, a barcode reader may be programmed via an electronic or network connection, a cable connection, or via an enterprise update that pushes a configuration to one or more scanners over a network. The configuration may be based on programming instructions or data stored in a computer memory of a given barcode reader (e.g., a computer memory of the barcode reader 100).

[0052] At box 806, the scanner can then be operated or controlled based on the updated ADF configuration. For example, such configuration can include valid data formatting for the following processes: appending asset information to the scanned data; assigning standards to the trigger buttons of the barcode reader (e.g., one button to another button or vice versa); sending data from one location to another location; and / or assigning ADF rules to each host (e.g., a first rule for IBMHH format and a second rule for HID format). The ADF-based system and method further includes controlling an LED, a vibration motor, or a buzzer. The ADF-based system and method further includes programming the printer in a single action (e.g., programming up to 30 strings in a single action or command).

[0053] ADF-based systems and methods provide improvements over existing scanner configuration techniques for at least the following reasons: The ADF-based systems and methods disclosed herein provide simplified programming (e.g., from 25 actions to 5 actions of programming), which can improve the memory or processing required by the barcode reader and / or associated host system to program or configure the barcode reader. In addition, the ADF-based systems and methods provide GUI-based configuration, for example, the ability to drag and drop ADF rules used to configure a physical barcode reader in order to program or configure the barcode reader. More generally, improvements over existing scanner configuration techniques include: adding the ability to process large blocks of input data with a single operation, which previously required multiple operations; supporting new operations that eliminate the need for multiple separate operations to perform the same task; and supporting larger search and replace strings, all of which can perform the same activity with fewer operations. Other examples are provided in the examples herein, including the following.

[0054] User feedback control.

[0055] In various aspects, a scanner system can be configured to implement scanner configuration related to user feedback control. The scanner system can include a barcode reader (e.g., barcode reader 100 or other data capture device) and one or more processors (e.g., processor(s) 202), which can be one or more processors of a scanner and / or a host computer to which the scanner is connected. In addition, the scanner system can include a memory (e.g., one or more memories 204) communicatively coupled to the one or more processors. The scanner can further include computing instructions stored on the memory that, when executed by the one or more processors, cause the one or more processors to configure the barcode reader to provide user feedback as an output of the barcode reader.

[0056] The user feedback may include one or more of auditory feedback, visual feedback, or tactile feedback. For example, in one aspect, the auditory feedback may include a beep indication output by a speaker of a barcode reader (e.g., barcode reader 100). Figure 3 Shown.

[0057] Figure 3 300 is a table representing an example audible sequence according to aspects described herein. Table 300 illustrates output tones that may be configured by ADF rules. For example, table 300 indicates twenty-seven (27) options that may be selected. Figure 3 In the example of , the scanner can be configured to emit a sound as a beep indication or sequence. The option is to configure various tones, such as a high tone (e.g., for a successful scan or read) or a low tone (e.g., to indicate an error generated by scanning certain barcodes or an alert required for a specific process).

[0058] For example, option number 1 configures the barcode reader (e.g., barcode reader 100) to beep or sound at a high frequency one (1) time in a short duration. As a further example, option number 7 configures the barcode reader (e.g., barcode reader 100) to beep or sound at a low frequency two (2) times in a short duration. As an even further example, option number 21 configures the barcode reader (e.g., barcode reader 100) to beep or sound at a high-low-high-low frequency four (4) times in a short duration. The other options are similar, but the configurations are as follows: Figure 3 shown.

[0059] In another example, the output of the barcode reader may include visual feedback, such as an indication output by a light emitting diode (LED) of the barcode reader (e.g., barcode reader 100). In various aspects, the barcode reader may be configured to illuminate the LED of the barcode reader with a specified color and a specified duration. For example, the visual feedback may be color coded (e.g., green, amber, red, blue, etc.). Additionally or alternatively, the visual feedback may be changed or replaced in one or more visual feedback modes. For example, the LED may be illuminated continuously for one or more seconds (or fractions of a second). Additionally or alternatively, the LED may be set to flash for one or more seconds (or fractions of a second). Additionally or alternatively, the duration of a pattern or sequence may be set to a minimum or maximum duration (e.g., 1 second to 10 seconds).

[0060] In still further examples, the output of the barcode reader may include a vibration indication (such as a tactile indication). When configured with a vibration indication, the barcode reader can vibrate when the barcode scan is successful. The vibration can be performed via a vibrator or other electromechanical component that emits or generates tactile forces. The vibration indication can include, for example, a duration of 250 milliseconds (ms) during which the barcode reader vibrates. Additionally or alternatively, the barcode reader can be configured to vibrate in a specified sequence, for example, for a specified number of repetitions. For example, the barcode reader can be configured to vibrate in a triple vibration pattern in the following manner: 250ms vibration, 250ms pause, 250ms vibration, 250ms pause, 250ms vibration, and 250ms pause. It should be understood that more, additional, and different vibrations or patterns can be configured to provide vibration-based feedback from the barcode reader.

[0061] In further aspects, user feedback can be provided to indicate one or more of: a positive scan result, a negative scan result, or a scan failure. In various aspects, the positive or negative scan result can be based on the context of the user's interaction with the barcode reader. This can include how the system was triggered, what host is connected, or the content and order of the data collected by the device.

[0062] Going one step further, in today's industry, scanners can read all bar code symbologies and provide the same programmed user feedback (buzzer, LED and vibration).

[0063] However, scanners can now be programmed to provide different user feedback (buzzer, LED, vibration) based on the context of the barcode (symbol, length, presence of unique strings in the data).

[0064] For example, a scanner can now be programmed to beep, LED, vibrate one way when scanning a UPC, and beep, LED, vibrate a different way when scanning a Code 128. Thus, the two symbologies have different user feedback to provide positive scan feedback, but the scanner can be programmed to always provide the same negative feedback. Feedback can be customized based on the symbol, symbol length, presence of a unique string, and the location of that string.

[0065] Thus, in some aspects, a barcode reader is disclosed that includes: a housing; an image acquisition component that is at least partially located within the housing and has a field of view (FOV), the image acquisition component being operable to capture image data associated with an environment appearing within the FOV; a user feedback component that is operable to provide a plurality of user feedback responses; and a controller that is communicatively coupled to the image acquisition component and the user feedback component, the controller being configured to decode indicia appearing in the image data, wherein: the barcode reader is configurable to operate alternately in one of at least two modes; in a first mode of the at least two modes, the controller is configured to (i) instruct the user feedback component to generate a first type of user feedback response in response to successfully decoding a first type of indicia, and (ii) instruct the user feedback component to generate a first type of user feedback response in response to successfully decoding a first type of indicia. The controller is configured to (i) instruct the user feedback component to generate a first type of user feedback response in response to successfully decoding a second type of tag; in a second mode of the at least two modes, the controller is configured to (i) instruct the user feedback component to generate a second type of user feedback response in response to successfully decoding the first type of tag, and (ii) instruct the user feedback component to generate a third type of user feedback response in response to successfully decoding the second type of tag; the first type of tag is different from the second type of tag; the second type of user feedback response is different from the third type of user feedback response; the second type of user feedback response is one that is different from or the same as the first type of user feedback response; and the parameters used to define the first type of tag and the second type of tag are at least one of predefined in the controller or user defined.

[0066] In some aspects, the user feedback response may include one or more of: auditory feedback, visual feedback, or tactile feedback.

[0067] In a further aspect, the user feedback response is dependent upon the context of the scanned barcode, the context selected from at least one of: symbology, length, or presence of a unique string of characters in the scanned data.

[0068] In a further aspect, the indicia can include one or more of: a positive scan result, a negative scan result, or a scan failure.

[0069] Output asset tracking information.

[0070] In various aspects, a scanner system can be configured to implement a scanner configuration related to changing an input source based on asset tracking information. The scanner system can include a barcode reader (e.g., barcode reader 100 or other data capture device) and one or more processors (e.g., processor(s) 202), which can be one or more processors of a scanner and / or a host computer to which the scanner is connected. In addition, the scanner system can include a memory (e.g., one or more memories 204), which is communicatively coupled to the one or more processors. The scanner can further include computing instructions stored on the memory, which, when executed by the one or more processors, cause the one or more processors to update the barcode reader to read data in a format defined by the asset tracking information. When executed by the one or more processors, the computing instructions can also cause the one or more processors to configure the barcode reader to output scanned data corresponding to the asset tracking information.

[0071] In various aspects, the asset tracking information may include one or more fields selected from one or more of a model number, a serial number, a firmware version, and / or a configuration file name.

[0072] A barcode reader (e.g., barcode reader 100) can be configured to change the data source to which the ADF rule is applied. It can be an asset information portion of input data (e.g., output scan data) such as scanned by a scanner. In other words, the ADF rule is applied or executed (e.g., by a barcode reader or a host computer's (multiple) processors) to change the input data source from the scanned barcode data to one or more portions of the selected scanner asset tracking information. For example, asset tracking information, such as asset information (e.g., various fields and / or combinations of asset tracking information) can be added or applied to the scanned data. The asset tracking information can be added to the scanner data as a prefix and / or suffix. Such asset tracking information can include one or more of the model number of the scanned item or product, the serial number of the item or product scanner, the firmware version of the item or product scanner, or the configuration file name.

[0073] In various aspects, selecting an ADF rule for establishing asset tracking information causes the cursor position pointer to start at the beginning (first character) of the asset tracking information. In this manner, the scanner will be configured to read the bar code or other information with the expectation that the asset tracking information will be part of the bar code (e.g., as a prefix and / or suffix). If the input source switches back to scanned bar code data, the cursor position pointer is restored to its previous bar code data position. In various aspects, it should be understood that a "cursor" or "scanner cursor" refers to a pointer to the next character of the scanned input data that will be processed by the associated action of the ADF rule.

[0074] Furthermore, a work site may have several workstations, each with a barcode scanner that reads the barcode. The data is sent to a central computer system for processing. In today's industry, there is no way to configure the scanner to output a serial number to identify which scanner collected the data. Additionally, no other asset information (model, serial number, manufacturing date, firmware version, configuration file name) can be programmed to be output via the scan.

[0075] However, the barcode scanner can be configured to append any scanner asset information (model number, serial number, manufacturing date, firmware version, configuration file name) when transmitting the barcode data to the host.

[0076] For example, several store clerks are scanning items on a shelf to take inventory. The serial number of the scanner assigned to each clerk is recorded in advance. As the data is scanned, the scanner's serial number is attached to the UPC bar code data scanned by the clerk. This data is collected through a central station. At the end of the day, the data reflects the items scanned by each scanner.

[0077] Thus, in some aspects, the present disclosure describes a barcode reader comprising: a housing; an image acquisition component that is at least partially located within the housing and has a field of view (FOV), the image acquisition component being operable to capture image data associated with an environment appearing within the FOV; a memory that stores at least one barcode reader-specific parameter; a communication module that is configured to send data to an external device; a controller that is communicatively coupled to the image acquisition component, the communication module, and the memory, the controller being configured to decode a tag appearing in the image data, wherein: the barcode reader is configured to operate alternately in one of at least two modes; in a first mode of the at least two modes, the controller is configured to transmit a first message to the external device via the communication module in response to successfully decoding the tag in the image data, the first message including at least a portion of a payload associated with the tag and excluding the at least one barcode reader-specific parameter; and in a second mode of the at least two modes, the controller is configured to transmit a second message to the external device via the communication module in response to successfully decoding the tag in the image data, the second message including at least a portion of the payload associated with the tag and the at least one barcode reader-specific parameter.

[0078] In some aspects, the barcode reader specific parameters may include one or more fields selected from one or more of the following: model number, serial number, firmware version, or configuration file name.

[0079] Change the input source.

[0080] In various aspects, a scanner system can be configured to implement scanner configuration related to changing a barcode reader input source. The scanner system can include a barcode reader (e.g., barcode reader 100 or other data capture device) and one or more processors (e.g., processor(s) 202), which can be one or more processors of a scanner and / or a host computer to which the scanner is connected. In addition, the scanner system can include a memory (e.g., one or more memories 204) communicatively coupled to the one or more processors. The scanner can further include computational instructions stored on the memory that, when executed by the one or more processors, cause the one or more processors to configure the barcode reader to aggregate output data from a selected portion of the one or more input sources.

[0081] In various aspects, the input source may include one or more of: a user-defined string, asset tracking information, a barcode (e.g., a previously scanned barcode), a current time (e.g., real-time clock (RTC) data), a current date, and / or RFID data.

[0082] In one aspect, the input source can include a user-defined string. For example, a barcode reader (e.g., barcode reader 100) can be configured to change the data source to which an ADF rule is applied or for which an ADF rule is executed. For this example, this can be a user-defined string portion of the input data. In other words, the execution or application of the ADF rule changes the input data source from the scanned barcode data to the user-defined string specified in the action. ADF rules provide the ability to input a string that can be a single character or multiple characters (e.g., a mixture of multiple characters), which can include special non-printable characters. For example, a user-defined string can include: " <gs> 714 <tab>", in which, it is understandable that " <gs>” represents ASCII group separator 29, and " <tab>” represents the ASCII horizontal tab character 9. <gs>and <tab>Each of these is an example of an unprintable and / or recognizable character.

[0083] In various aspects, the ADF rule selected to define the user-defined string causes the cursor position pointer to start at the beginning (first character) of the user-defined string. In this manner, the scanner will be configured to read the barcode or other information with the expectation that the user-defined string will be part of the barcode (e.g., as a prefix and / or suffix). If the input source is switched back to scanned barcode data, the cursor position pointer is restored to its previous barcode data position.

[0084] In some aspects, a user can select or define a string length or other information for the barcode being scanned. For example, if the selected ADF string length is set to "full", a string with a maximum length (e.g., 128 characters) can be specified. Otherwise, a smaller value (e.g., compact character length) can be selected for fewer characters (e.g., a maximum length of 30 characters). More generally, in some aspects, a user can select a full ADF rule syntax that allows for processing larger blocks of data and longer search and replace strings. A user can also select a compact ADF rule syntax that processes smaller blocks of data and shorter search and replace strings. This allows rules to potentially use less memory and free up space for more rules in the same space.

[0085] On the other hand, the input source may include asset tracking information. The barcode reader (e.g., barcode reader 100) may be configured to change the data source to which the ADF rules are applied or executed. More generally, in some aspects, any one or more editing capabilities of the ADF rules may be used to process data (i.e., and may not be used only to insert data) regardless of the input source. For example, the ADF rules may be configured to include only the first 6 characters of the model number. This may be the asset information portion of the input source scanned by the scanner. In other words, the ADF rules are applied or executed to change the input data source from the scanned barcode data to one or more selected portions of the scanner asset tracking information. For example, asset tracking information, such as asset information (e.g., various fields and / or combinations of asset tracking information) may be added or applied to the scanned data. The asset tracking information may be added to the scanner data as a prefix and / or suffix. Such asset tracking information may include one or more of the model number of the scanned item or product, the serial number of the item or product scanner, the firmware version of the item or product scanner, or the configuration file name.

[0086] In various aspects, the ADF rule selected for establishing the asset tracking information causes the cursor position pointer to start at the beginning (first character) of the asset tracking information. In this manner, the scanner will be configured to read the barcode or other information in anticipation that the asset tracking information will be, or will become, part of the barcode (e.g., as a prefix and / or suffix). If the input source is switched back to scanned barcode data, the cursor position pointer is restored to its previous barcode data position.

[0087] In a further aspect, the input source may include barcode data. The barcode data source is the default source of the barcode reader (e.g., barcode reader 100). The barcode reader (e.g., barcode reader 100) may be configured to change the data source to which the ADF rule is applied or executed, which, as input data after being scanned by the barcode reader, may be the barcode data or a portion of the barcode data. As an additional example, a flatbed scanner may have an attached auxiliary handheld scanner, and the ADF rule may be programmed or configured to apply only to data from this scanner. If no ADF rule or input source is specified, the barcode data will be configured as the default rule.

[0088] Furthermore, the scanner can program the printer by sending printer programming language commands to the printer using more than 20 ADF actions. ADF actions define the details of the label to be printed based on the scanned barcode data.

[0089] However, in a single ADF motion, the barcode scanner can transmit to the printer all the programming language commands necessary to print a label in the required size and font.

[0090] For example, a single ADF action can be programmed into a scanner to send the commands needed to set up the printer to output the desired labels. The ADF action enables the scanner to output the scanned barcode data + printer commands to print out a label from the printer showing the scanned barcode data.

[0091] Thus, in some aspects, a system is disclosed comprising: a barcode reader, comprising: a barcode reader housing; an image acquisition component, which is at least partially located within the barcode reader housing and has a field of view (FOV), the image acquisition component being operable to capture image data associated with an environment appearing within the FOV; a barcode reader communication module, the barcode reader communication module being configured to transmit data to an external device; and a barcode reader controller, which is communicatively coupled to the image acquisition component and the communication module, the barcode reader controller being configured to decode indicia appearing in the image data; and a printer, comprising: a printer housing; a media processing component, the media processing component being configured to process print media according to print instructions; a printer communication module, the printer communication module being configured to receive data from another external device; and a printer controller, which is communicatively coupled to the media processing component and the printer communication module, The machine controller is configured to cause the media processing component to process the print medium according to the print instruction, wherein: the barcode reader can be configured to operate alternately in one of at least two modes: in a first mode of the at least two modes, the barcode reader controller is configured to send a first message to an external device via a barcode reader communication module in response to successfully decoding a mark in the image data, the first message including a payload associated with the mark and excluding commands that, if received by the printer, would cause the printer controller to cause the media processing component to process the print medium; and in a second mode of the at least two modes, the barcode reader controller is configured to send a second message to the printer via the barcode reader communication module in response to successfully decoding the mark in the image data, the second message including a payload associated with the mark and a command that causes the printer controller to cause the media processing component to process the print medium based at least in part on the payload associated with the mark.

[0092] In another aspect, a barcode reader is disclosed, comprising: a barcode reader housing; an image acquisition component at least partially located within the housing and having a field of view (FOV), the image acquisition component operable to capture image data associated with an environment appearing within the FOV; a barcode reader communication module, the barcode reader communication module configured to transmit the data to an external device; and a barcode reader controller communicatively coupled to the image acquisition component and the communication module, the barcode reader controller configured to decode indicia appearing in the image data, wherein: the barcode reader can be configured to operate alternately in one of at least two modes; in a first of the at least two modes In the mode, the barcode reader controller is configured to: in response to successfully decoding the tag in the image data, send a first message to the external device via the barcode reader communication module, the first message including a payload associated with the tag and excluding commands that, if received by the printer, would cause the printer to process the print medium; and in a second mode of the at least two modes, the barcode reader controller is configured to, in response to successfully decoding the tag in the image data, send a second message to the printer via the barcode reader communication module, the second message including a payload associated with the tag and commands that cause the printer to process the print medium based at least in part on the payload associated with the tag.

[0093] In these aspects, the payload can be one of the following: a user-defined string, asset tracking information, a barcode, the current time, the current date, or RFID data.

[0094] If no data is sent to the host, suppress error status feedback (beep, LED, vibration).

[0095] In various aspects, a scanner system can be configured to implement a scanner configuration related to suppressing errors or error state feedback when, for example, no data is sent to a host computer. The scanner system can include a barcode reader (e.g., barcode reader 100 or other data capture device) and one or more processors (e.g., processor(s) 202), which can be one or more processors of the scanner and / or a host computer to which the scanner is connected. In addition, the scanner system can include a memory (e.g., one or more memories 204) communicatively coupled to the one or more processors. The scanner can further include computing instructions stored on the memory that, when executed by the one or more processors, cause the one or more processors to configure the barcode reader to suppress an error state of the barcode reader when no scanned data is transmitted from the barcode reader to the host device.

[0096] In these aspects, suppression of the error condition may include preventing one or more outputs of the barcode reader (e.g., preventing the barcode reader from generating an output). Such outputs may include auditory feedback (e.g., a beep indication), visual feedback (e.g., an LED output or a GUI output), or tactile feedback (e.g., vibration feedback). In various aspects, if implementation of the ADF rules (e.g., a scanner scanning a barcode) results in no data being transmitted, then the error indication may be suppressed (prevented) from being sent to the barcode reader and / or the host computer.

[0097] The firmware of the barcode reader may be updated to suppress the output of the barcode reader. Additionally or alternatively, a host driver of the host computer may be updated to suppress the output of the barcode reader.

[0098] Taking this a step further, once the trigger is pulled on the scanner, a beep will sound indicating that a decode has occurred, and then the ADF will be executed. Therefore, if no data is sent to the host, the ADF engine cannot suppress the positive feedback beep that has already sounded.

[0099] However, ADF 2.0 enables the scanner to control what type of feedback is provided based on whether data is sent to the host. So when the trigger is pulled, no feedback (beep, LED, vibration) is provided until the ADF engine decides whether to send data to the host.

[0100] For example, customers can now program the scanner to send positive feedback only when data is sent to the host, not when the scanner decodes a barcode. For example, data sent to the host indicates a good decode beep and green LED and positive vibration. As another example, data not sent to the host can be equivalent to no decode beep, no LED, no vibration, etc.

[0101] Thus, in some aspects, a barcode reader is disclosed that includes: a housing; an image acquisition component that is at least partially located within the housing and has a field of view (FOV), the image acquisition component being operable to capture image data associated with an environment appearing within the FOV; a user feedback component that is operable to provide a plurality of user feedback responses; and a controller that is communicatively coupled to the image acquisition component and the user feedback component, the controller being configured to decode indicia appearing in the image data, wherein: the barcode reader can be configured to operate alternately in one of at least two modes; in a first mode of the at least two modes, the controller is configured to (i) indicate to the user feedback component in response to successfully decoding a first type of indicia, generating a first type of user feedback response, and (ii) instructing the user feedback component to generate the first type of user feedback response in response to successfully decoding a second type of tag; in a second mode of the at least two modes, the controller is configured to (i) instruct the user feedback component to generate a second type of user feedback response in response to successfully decoding the first type of tag, and (ii) not generate a user feedback response in response to successfully decoding the second type of tag; the first type of tag is different from the second type of tag; the second type of user feedback response is one that is different from or the same as the first type of user feedback response; and the parameters used to define the first type of tag and the second type of tag are at least one of predefined in the controller or user defined.

[0102] In these aspects, not generating user feedback can include suppression of the error state, and wherein suppression of the error state includes preventing one or more outputs of the barcode reader: auditory feedback, visual feedback, or tactile feedback.

[0103] In a further aspect, suppression of the error condition may include preventing user interface or alert feedback.

[0104] In a further aspect, suppression of the error condition may include preventing data from being transmitted to the external host.

[0105] Apply ADF based on source (COM protocol or trigger).

[0106] In various aspects, a scanner system can be configured to implement a scanner configuration regarding source-based application of ADF rules. The scanner system can include a barcode reader (e.g., barcode reader 100 or other data capture device) and one or more processors (e.g., processor(s) 202), which can be one or more processors of a scanner and / or a host computer to which the scanner is connected. In addition, the scanner system can include a memory (e.g., one or more memories 204) communicatively coupled to the one or more processors. The scanner can further include computing instructions stored on the memory that, when executed by the one or more processors, cause the one or more processors to configure the barcode reader to format the scanned data based on the scanned source type.

[0107] In these aspects, the scan source type can be selected from one or more of the host standard or the trigger source standard. In some aspects, such standard updates can provide the ability to support multiple standards within a single ADF rule. For example, a barcode reader (e.g., barcode reader 100) can be configured to format scan data based on the type of host device (e.g., computer, mobile device, or external device) that is about to receive output data from the scanner. Additionally or alternatively, the host device or host-based computer configuration provides the ability to assign standards (e.g., the com protocol used) based on the host type using ADF rules. For example, a first standard can be for handheld devices that support IBM HID. As another example, a second standard can be for SNAPI-based devices.

[0108] Figure 4 An example configuration graphical user interface (GUI) 400 for scanner configuration using advanced data formatting according to aspects described herein is shown. Figure 4 In the example of FIG. 4 , GUI 400 includes an option to select a host communication protocol. Figure 4 As shown, a host computer (e.g., Figure 2 400) are provided for configuring the barcode reader and / or the host computer itself. This includes SNAPI and IBM HID host communication protocols, where the ADF rules configure the barcode reader (e.g., barcode reader 100) and / or the host computer to send and / or receive data using the SNAPI and / or IBM HID data formats and / or communication protocols. The user may choose to select this option from the GUI 400, which causes the barcode reader and / or host computer to be updated or configured with the selected communication protocol.

[0109] Additionally or alternatively, the barcode reader may be configured to format the scan data based on how the reading of the barcode data is triggered. For example, Figure 5 Another example configuration graphical user interface (GUI) 500 for scanner configuration using advanced data formatting according to aspects described herein is shown. Figure 5 In the example of FIG. 5 , GUI 500 includes an option to select a barcode trigger mode. Figure 5 As shown, a host computer (e.g., Figure 2 The ADF rules of the host computer (shown in FIG. 5) are set to configure the barcode reader. This includes primary triggers and software triggers, where the ADF rules configure the barcode reader (e.g., barcode reader 100) to scan data when a trigger on the barcode reader is activated and / or when a software trigger (hands-free trigger) of the barcode reader is activated (e.g., such as via an RFID tag). The user may choose to select this option from the GUI 500, which causes the barcode reader and / or host computer to be updated or configured with the selected trigger criteria. Triggers may be selected, assigned, or configured to include primary trigger mode, secondary button, hands-free decode, and / or software triggered decode (i.e., when a software triggered decode is sent from the host application, a scanning session is initiated without a button press).

[0110] Further, additionally or alternatively, the scan source type can be defined as a defined character set. In these aspects, the barcode reader (e.g., barcode reader 100) can be configured to format the scanned data based on certain character sets present in the data. Example character sets can include any one or more of the following: only numeric characters, only alphabetic characters, spaces, and / or predefined character sets defined by the user and stored in non-volatile memory. In various aspects, the execution of ADF rules can be limited to input data that only contains data from one or more character sets. For example, if numeric characters are selected, barcodes that only contain characters 0 to 9 are applicable.

[0111] The scanner can be configured based on the standard by updating or configuring the firmware of the barcode reader and / or the host device. This can include assigning one or more rule sets to the host computer based on different data types or format types (e.g., COM protocols). For example, a first rule set can be provided for an IBM handheld device or scanner. A second rule set can be provided for an HID-based device or software program that sends and receives data in the HID data format.

[0112] Additionally or alternatively, the firmware of the barcode reader and / or host device can be updated based on the screen or display of the host device that is currently in focus. For example, use of a first screen or display can cause a command to be sent to enable a first set of rules. Then, when a second (different) screen or display is accessed, another command can be sent to enable a second (different) set of rules. The sending of the first set of rules or the second set of rules causes the barcode reader and / or host to be updated or configured based on the application screen or display being used (and the data format to be transmitted to and / or from such screen).

[0113] Going a step further, a store may use multiple barcode scanners of the same model in various locations throughout the business. The scanner used by the front-end cashier may need to be configured differently than the scanner used in the mailroom.

[0114] However, the barcode scanner can be configured with scripts to apply different scripts to the barcode data depending on the protocol required to communicate with the host system. This allows a single model of barcode scanner to automatically run the script for the location of use.

[0115] For example, a store's cash register uses an IBM Retail Interface over USB, while the mailroom uses a USB HID keyboard interface to connect to the scanner. When the scanner is connected to the IBM Retail Interface, it can be pre-programmed with scripts to edit barcode data to support retail transactions. If the same scanner is moved to the mailroom and connected to the mailroom via a USB HID keyboard, the scanner can select a different set of scripts to process shipping information.

[0116] Thus, in some aspects, a barcode reader may include a barcode reader housing; an image acquisition component that is at least partially located within the barcode reader housing and has a field of view (FOV), the image acquisition component being operable to capture image data associated with an environment that appears within the FOV; a communication module that is configured to interface with an external host via at least two communication protocols; a memory that stores a plurality of scripts, each of the plurality of scripts defining a configuration set that defines at least one operating parameter of the barcode reader; and a controller that is communicatively coupled to the image acquisition component, the memory, and the communication module, the controller being configured To decode a mark appearing in image data, wherein: when the communication module interfaces with an external host, the controller is operable to determine which of at least two communication protocols is used between the bar code reader and the external host; in response to a first of the two communication protocols used between the bar code reader and the external host, the controller executes a first script of a plurality of scripts to configure the bar code reader according to a first operating parameter; in response to a second of the two communication protocols used between the bar code reader and the external host, the controller executes a second script of a plurality of scripts to configure the bar code reader according to a second operating parameter; and the first script is different from the second script.

[0117] Taking this a step further, medical offices have wireless barcode scanners that reside in a stand that automatically detect the presence of a barcode and scan it without touching the scanner. The scanner can be removed and used remotely to scan the barcode by pulling a trigger. Regardless of the trigger method, the scanner sends the same data regardless of how the barcode scan was initiated.

[0118] However, depending on the method used to trigger the barcode scan, the barcode scanner can be configured via scripting to perform different actions. For example, these can include: Trigger Option 1 - Push Button (the only trigger on most scanners); Trigger Option 2 - A second button on devices such as the CS6080; Trigger Option 3 - Hands-free scanning; Trigger Option 4 - Scanning on a cradle (this is also hands-free); Trigger Option 5 - Triggered by a command sent by other processing methods (host system).

[0119] For example, a healthcare office worker in a hospital will scan the barcode on their badge in hands-free mode to identify themselves. They will then remove the scanner from the cradle. The scanner has scripts programmed to process the prescription bottles used while carrying the scanner from patient to patient. The barcode scanner will only read the barcodes on the patient wristband and prescription tray when manually triggered. Other barcodes will be ignored. When the scanner returns to the cradle, it is programmed to read only the badge ID barcode presented to it.

[0120] Therefore, the present invention discloses a barcode reader, including a barcode reader housing; an image acquisition component, which is at least partially located in the barcode reader housing and has a field of view (FOV), the image acquisition component is operable to capture image data associated with an environment appearing in the FOV; a communication module, the communication module is configured to interface with an external host; a memory, the memory storing a plurality of scripts, each of the plurality of scripts defining a configuration set, the configuration set defining at least one operating parameter of the barcode reader; and a controller, which is communicatively coupled to the image acquisition component, the memory and the communication module, the controller being configured to decode a mark appearing in the image data, wherein: the barcode reader is operable in one of at least two trigger modes; the controller is operable to determine which of the at least two trigger modes is activated; in response to a first trigger mode of the at least two trigger modes being activated, the controller executes a first script of the plurality of scripts to configure the barcode reader according to the first operating parameter; in response to a second trigger mode of the at least two trigger modes being activated, the controller executes a second script of the plurality of scripts to configure the barcode reader according to the second operating parameter; and the first script is different from the second script.

[0121] Filtering Output

[0122] In various aspects, a scanner system can be configured to implement scanner configurations related to modifying and / or filtering data output. The scanner system can include a barcode reader (e.g., barcode reader 100 or other data capture device) and one or more processors (e.g., processor(s) 202), which can be one or more processors of a scanner and / or a host computer to which the scanner is connected. In addition, the scanner system can include a memory (e.g., one or more memories 204) communicatively coupled to the one or more processors. The scanner can further include computing instructions stored on the memory that, when executed by the one or more processors, cause the one or more processors to configure the barcode reader to filter data transmitted to the host device, wherein the filtered data is an output type of the barcode reader.

[0123] For example, in various aspects, the output type can be selected from one or more of the following: non-printable data, blank data, numeric data, character data, or custom data. In various aspects, the barcode reader can be configured to filter input data based on certain character sets present in the data. In these aspects, only the specified type of character set (i.e., the non-filtered character set) is allowed to be present in the data transmitted to the host device (e.g., Figure 2 The host computer shown in the output data.

[0124] Figure 6 600 is a table representing example filtered output data according to aspects described herein. Non-printable data may be non-printable ASCII value characters or data. Whitespace may include tabs, spaces, line feeds, vertical tabs, carriage returns, etc. Numerical values ​​may include values ​​from 0 to 9. Character or alphabetic data may be, for example, alphabetic data (AZ) formatted in ASCII, UTF-8, Unicode, etc. Other or special characters or values ​​may be values ​​greater than ASCII value 127 or other special characters (e.g., non-alphanumeric values). Custom data may be, for example, a predefined character set defined by a user and stored in a non-volatile memory.

[0125] The barcode reader and / or the host computer can be configured to exclude or filter data transmission from the barcode reader to the host computer. This can be configured in the barcode reader or the host computer (or both).

[0126] For example, FIG. 7 illustrates another example configuration graphical user interface (GUI) 700 for scanner configuration using advanced data formatting according to aspects described herein. Fig. 7A In the example of , a user can add information to generate or create ADF rules based on criteria including letters or numbers. For example, as described herein, an ADF rule can be a custom filter to exclude certain letters, numbers, non-printable, blank, or other data.

[0127] Figure 7B Another example configuration graphical user interface (GUI) 750 for scanner configuration using advanced data formatting according to aspects described herein is shown. Figure 7B In the example of , barcode information or transmitted data can be filtered or modified based on data type or character set (such as numbers and / or non-printable data).

[0128] Filtering data excludes (removes) selected data categories, preventing them from being transmitted to the host. For example, if the input data is "123abc" and the exclusion or filter category is set to Alpha, only "123" will be transmitted to or received at the host computer. It should be understood that the filtered data can be scanned barcode data, asset information, user-defined strings, and / or other information as described herein.

[0129] Furthermore, retail products may be identified with barcodes in various formats, some with embedded spaces between data fields, and / or others with alphabetic characters or special characters. Not all host protocols or storage systems are capable of handling non-numeric data. Scanning these barcodes can cause transmission errors to occur.

[0130] However, the barcode scanner can be configured with a script to filter out spaces or letters or any other class of character data from the barcode data before transmission to the host device. The user can optionally define their own custom character sets in the script that will be stripped from the data.

[0131] For example, a store location needs to scan barcodes on products that have different formats, some with spaces embedded between fields, and / or others with alphabetic characters. All of these characters need to be stripped out before transmission. Scripts can be programmed in the scanner to remove select types of characters from the data before transmission.

[0132] Thus, in some aspects, a barcode reader is described that includes: a housing; an image acquisition component that is at least partially located within the housing and has a field of view (FOV), the image acquisition component being operable to capture image data associated with an environment appearing within the FOV; a communications module that is configured to interface with an external host; a controller that is communicatively coupled to the image acquisition component and the communications module, the controller being configured to decode indicia appearing in the image data, wherein: the barcode reader is configurable to operate alternately in one of at least two modes; in a first of the at least two modes, the controller is configured to, in response to successfully decoding the indicia, cause the communications module to send a first message to the external host, the first message including an unchanged payload encoded by the indicia; and in a second of the at least two modes, the controller is configured to, in response to successfully decoding the indicia, cause the communications module to send a second message to the external host, the second message including an altered payload encoded by the indicia, the altered message excluding at least one character that is at least one of unrecognizable or unacceptable to the external host.

[0133] In these aspects, the altered payload may include a type selected from one or more of the following: non-printable data, blank data, numeric data, character data, or custom data.

[0134] Reduce the number of rules.

[0135] In various aspects, a scanner system can be configured to implement scanner configuration related to ADF rules and simplifications thereof. The scanner system can include a scanner device (e.g., scanner device 100 or other data capture device) and one or more processors (e.g., (multiple) processors 202), which can be one or more processors of a scanner and / or a host computer to which the scanner is connected. In addition, the scanner system can include a memory (e.g., one or more memories 204) communicatively coupled to the one or more processors. The scanner can further include computing instructions stored on the memory, which, when executed by the one or more processors, cause the one or more processors to configure the scanner device with a standard rule, the standard rule defining at least two criteria to be met before data formatting is applied, wherein the standard rule controls data formatting of at least one of the following: (a) scanned data scanned by the scanner device; or (b) output of the scanner device. These settings can be configured or set in the GUI.

[0136] For example, in various aspects, a standard rule may include a single ADF rule that defines at least two standards. That is, multiple standards may be supported within one ADF rule. In these aspects, a scanner device may be configured as a single rule with multiple standard segments. If any of these segments is true, the ADF rule is applied and executed.

[0137] Additionally or alternatively, a criteria rule may include multiple rules where at least two criteria are linked by Boolean logic. In these aspects, Boolean logic may be used to define the relationship between criteria. In these aspects, within a criteria segment, an explicit Boolean logic relationship between each pair of criteria may be defined. This configuration will override any implicit relationship between the two criteria.

[0138] Boolean logic, such as "and", "or", "not", "and not", and "or not", can be defined between standards or data. For example, some examples of Boolean logic include (A) an "or" based example: if the data or character length is 10 or starts with 4, it is true (otherwise it is false); (B) an "and" example: if the data or character starts with 4 and ends with 9, it is true (otherwise it is false); (C) an "not" example: if the code type is not code 128, it is true (otherwise it is false); (B) an "and not" example: if the character or data length is 10 and does not start with 4, it is true (otherwise it is false); and (E) an "or not" example: if the host is USB SNAPI and is scanned with a hands-free method, it is true (otherwise it is false).

[0139] Replaces data with user-defined characters.

[0140] In various aspects, a scanner system can be configured to implement a scanner configuration regarding replacing data with user-defined characters. The scanner system can include a barcode reader (e.g., barcode reader 100 or other data capture device) and one or more processors (e.g., processor(s) 202), which can be one or more processors of a scanner and / or a host computer to which the scanner is connected. In addition, the scanner system can include a memory (e.g., memory(s) 204) communicatively coupled to the one or more processors. The scanner can further include computing instructions stored on the memory that, when executed by the one or more processors, cause the one or more processors to configure the barcode reader to replace an identified subset of data within scanned data scanned by the barcode reader.

[0141] For example, in one aspect, the replaced data subset is or includes unprintable data. In these aspects, the scanner and / or the host computer can be configured to replace the unprintable characters in the input data with specified printable characters. The ADF rule can configure the scanner and / or the host computer to replace all unprintable characters in the input data with selected ASCII values. The input data can be scanned barcode data, asset information, or a user-defined string. For example, the barcode reader and / or the host computer can be configured to replace the unprintable characters in the input data with a printable escape sequence (e.g., / x99), which shows what the unprintable sequence is (e.g., / x99 means a 2-bit hexadecimal representation of an unprintable character). As another example, the barcode reader and / or the host computer can be configured to select a value of 255 as a special case, in which each unprintable character will be replaced by a 4-character escape sequence.

[00142] In another example aspect, the replaced data subset is or includes ASCII data or characters. These aspects may be useful when the barcode reader is connected to a host computer that supports keyboard emulation. In these aspects, the barcode reader can be configured to replace any character of the data with a specific sequence of keys pressed on the simulated host keyboard. Such keys may include the Tab or Enter key, the F1 key, the Alt-C key combination, the Ctrl-Z key combination, or other keys and / or key combinations.

[0143] In other aspects, replacing all instances of ASCII characters with a particular keystroke can occur. For example, where a given host computer only supports ASCII keystrokes, all HID keystrokes (e.g., replacing X with F12) can be replaced to match the ASCII format. For example, if the input data is "987, xyz, $$$", an ADF rule configured to replace commas (",") with the "[F2]" key will cause the updated and replaced data "987[F2]xyz[F2]$$$" to be transmitted to the host computer.

[0144] Furthermore, bar codes on ID cards such as driver's licenses contain specially encoded data fields that are not printable. On some host devices, when non-printable data is sent, it may interfere with the host distributing data in packet format. Scanning these bar codes may cause transmission errors to occur.

[0145] However, a barcode scanner can be configured with a script to replace non-printable characters in the barcode with specific printable characters or escape sequences that identify the characters by their hexadecimal values.

[0146] For example, scan the 2D barcode on the back of a driver's license. The barcode contains dozens of data fields, some of which are proprietary encrypted data. The connected host cannot handle the unprintable data. To solve this problem, a script can be defined to change the unprintable data with an asterisk character. When the data is received, the asterisks show where the original data was edited.

[0147] Thus, in some aspects, the present disclosure describes a barcode reader comprising: a housing; an image acquisition component that is at least partially located within the housing and has a field of view (FOV), the image acquisition component being operable to capture image data associated with an environment appearing within the FOV; a communication module, the communication module being configured to interface with an external host; a controller that is communicatively coupled to the image acquisition component and the communication module, the controller being configured to decode indicia appearing in the image data, wherein: the barcode reader is configurable to operate alternately in one of at least two modes; in a first mode of the at least two modes, the controller is configured to, in response to successfully decoding the indicia, cause the communication module to send a first message to the external host, the first message including an unchanged payload encoded by the indicia; and in a second mode of the at least two modes, the controller is configured to, in response to successfully decoding the indicia, cause the communication module to send a second message to the external host, the second message including an altered payload encoded by the indicia, the altered message replacing at least one unprintable character contained in the payload with a corresponding printable character.

[0148] In some aspects, the unprintable characters may include one or more of: unprintable data, American Standard Code for Information Interchange (ASCII) data, or data that would cause a host device or external host to generate an error upon receiving the unprintable characters.

[0149] Replaces specified characters in the barcode data with a key sequence from the host computer.

[0150] Taking this a step further, some host devices support a keyboard emulation protocol. In situations where a barcode contains multiple fields of data, it is sometimes desirable to send each field to the host followed by the special key required by the host system. Examples are one of the F keys (F1, F2, F3, etc.) or the Alt shift characters (Alt A, Alt B, Alt C, etc.). Standard barcode scanners cannot make this substitution unless there is special software in the device.

[0151] However, a barcode scanner that can be configured with a script replaces the specified delimiter characters in the barcode with instructions to the host driver to send a specific key sequence instead. This allows the scanner to operate within the expected key sequence on the host system without having to write custom software on the scanner or the host system.

[0152] For example, a hang tag on a garment has three data fields: department number, dash separator, SKU number, dash separator, and price. The store system requires the F1 key to be pressed after the department and SKU fields. A script can be written to replace the dash character in the barcode data with the F1 key. This allows the expected data sequence to be sent without having to write special software for the scanner or host system.

[0153] Thus, in some aspects, the present disclosure describes a barcode reader comprising: a housing; an image acquisition component that is at least partially located within the housing and has a field of view (FOV), the image acquisition component being operable to capture image data associated with an environment appearing within the FOV; a communication module, the communication module being configured to interface with an external host; a controller that is communicatively coupled to the image acquisition component and the communication module, the controller being configured to decode indicia appearing in the image data, wherein: the barcode reader is configurable to operate alternately in one of at least two modes; in a first mode of the at least two modes, the controller is configured to, in response to successfully decoding the indicia, cause the communication module to send a first message to the external host, the first message including an unchanged payload encoded by the indicia; and in a second mode of the at least two modes, the controller is configured to, in response to successfully decoding the indicia, cause the communication module to send a second message to the external host, the second message including an altered payload encoded by the indicia, the altered message replacing at least one unprintable character contained in the payload with a corresponding key sequence.

[0154] The ability to parse out the data associated with the end of a barcode.

[0155] Furthermore, in current scanner products, script processing occurs from the beginning of the barcode data. Most operations and searches move from the beginning to the end of the data. There is no facility for reverse search mode.

[0156] However, barcode scanners with ADF capabilities can search the pattern and move the cursor in reverse (from the end of the barcode data set to the front).

[0157] For example, a 2D barcode has a data field that occurs an unspecified number of times. The user needs to extract the last instance of the field. The script can be programmed to search for the field marker "SKU=" starting at the end of the data.

[0158] Thus, in some aspects, the present disclosure describes a barcode reader comprising: a housing; an image acquisition component that is at least partially located within the housing and has a field of view (FOV), the image acquisition component being operable to capture image data associated with an environment appearing within the FOV; a communication module, the communication module being configured to interface with an external host; a controller that is communicatively coupled to the image acquisition component and the communication module, the controller being configured to decode a tag appearing in the image data, wherein: the barcode reader is configurable to operate alternately in one of at least two modes; in a first mode of the at least two modes, the controller is configured to, in response to successfully decoding the tag, cause the communication module to send a first message to the external host, the first message including an unchanged payload encoded by the tag; and in a second mode of the at least two modes, the controller is configured to, in response to successfully decoding the tag, cause the communication module to send a second message to the external host, the second message including an altered payload encoded by the tag, the altered message excluding a predefined number of characters, the predefined number of characters appearing at least one of the beginning of a string forming the payload or the end of the string.

[0159] Eliminate unnecessary data.

[0160] In various aspects, a scanner system can be configured to implement a scanner configuration related to eliminating unwanted data. The scanner system can include a scanner device (e.g., scanner device 100 or other data capture device) and one or more processors (e.g., processor(s) 202), which can be one or more processors of a scanner and / or a host computer to which the scanner is connected. In addition, the scanner system can include a memory (e.g., one or more memories 204) communicatively coupled to the one or more processors. The scanner can further include computing instructions stored on the memory that, when executed by the one or more processors, cause the one or more processors to configure the scanner device to delete a subset of data identified in scan data scanned by the scanning device.

[0161] In various aspects, the subset of data to be deleted can be one or more of the following: a number of characters identified based on a position within the scanned data, a number of characters outside of two positions within the scanned data, or a specified data pattern. In various aspects, the input data for elimination or removal can be scanned barcode data, asset information, or a user-defined string. In addition, if the string length is selected as complete, up to 4095 characters can be removed. If not (e.g., compact is selected), up to 252 characters can be removed.

[0162] In one example, the ADF rule may erase a certain number of characters (eg, "N" characters) between two positions, such as removing 5 characters starting from a given position (eg, the 7th character or position) in the scanned or input data.

[0163] In another example, the ADF rule can erase multiple characters at the end of the input data from the scanned data or the input data. For example, if the input data is 123abc, and N is 3 characters, only 123 will be transmitted to the host computer.

[0164] In some examples, the same action can be sent as part of a single action (e.g., instead of multiple actions). Such actions can be defined in an ADF rule for efficiently repeating the send action. This ADF rule repeats the next send value or send key N times. For example, if "Repeat Next Action" is 3, and the send key is Tab, then the value "Tab Tab Tab" will be transmitted.

[0165] In one example, an ADF rule can remove leading characters. For example, this action can remove all leading instances of a selected character from the input data. For example, if the barcode contains 00000123456, and this action is configured to remove "0", the output data will be 123456.

[0166] In another example, an ADF rule can remove trailing characters. For example, this action can remove all trailing instances of a selected character from the input data. For example, if the barcode contains 12345600000, and this action is configured to remove "0", the output data will be 123456.

[0167] In another example, an ADF rule may cause a single or first character pattern to be removed or deleted. This may include deleting a string of characters from the scanned data (e.g., skipping the first 3 characters and deleting the next 4 characters). Additionally, the action defined by the ADF rule may cause the first occurrence of a specified pattern to be deleted in the input data.

[0168] In another example, an ADF rule may cause all patterns of characters to be removed or deleted. This may include deleting all patterns of a string from the scan data (e.g., deleting all 4 characters "xxxx" in the scan data). The action defined by the ADF rule may cause all occurrences of the specified pattern to be deleted in the input data.

[0169] In another example, an ADF rule can trim or delete data outside of two positions in the scanned data. This can include deleting one or more characters. For example, an instruction to send data from position "X" to position "Y" in a barcode scan can result in data trimming. That is, the action defined by the ADF rule can trim (remove) characters outside of the selected start and end positions.

[0170] Simplify cursor movement, such as skipping, moving the cursor position.

[0171] In various aspects, a scanner system can be configured to implement scanner configuration regarding movement of a cursor of a barcode reader. The scanner system can include a barcode reader (e.g., barcode reader 100 or other data capture device) and one or more processors (e.g., processor(s) 202), which can be one or more processors of a scanner and / or a host computer to which the scanner is connected. In addition, the scanner system can include a memory (e.g., memory(s) 204) communicatively coupled to the one or more processors. The scanner can further include computing instructions stored on the memory that, when executed by the one or more processors, cause the one or more processors to configure the barcode reader to move a cursor of the barcode reader to a cursor position within scan data scanned by the barcode reader.

[0172] In these aspects, moving the cursor position includes one or more of: moving the cursor from the beginning of the scanned data to a selected position, moving the cursor back a number of characters from the end of the scanned data, moving the cursor back until it reaches a matching pattern, or moving the cursor back until it reaches a matching character.

[0173] For example, the movement can include moving the cursor to a precise location at the beginning of the barcode data. The ADF rule can cause the barcode reader to move the scanning cursor to a selected location from the beginning of the input data. For example, if the cursor is at position 13 of the input data, and the starting position is set to 6, the cursor will now be at position 6, i.e., the 6th character of the input data.

[0174] As another example, the movement of the cursor can include moving to a precise location at the end of the barcode data. The ADF rule can cause the barcode reader to move the scan cursor from the end of the input data to the selected location. For example, if the input data is 1234567abc, and N is 3 characters, then the cursor is now located on the "a" character in the string.

[0175] Other considerations

[0176] As used herein, each of the terms "tangible machine-readable medium," "non-transitory machine-readable medium," and "machine-readable storage device" are expressly defined as a storage medium (e.g., a disk of a hard drive, a digital versatile disk, an optical disk, a flash memory, a read-only memory, a random access memory, etc.) on which machine-readable instructions (e.g., program code in the form of software and / or firmware) are stored for any suitable period of time (e.g., permanently, for an extended period of time (e.g., while a program associated with the machine-readable instructions is being executed), and / or for a short period of time (e.g., while the machine-readable instructions are cached and / or in the process of being buffered)). Further, as used herein, each of the terms "tangible machine-readable medium," "non-transitory machine-readable medium," and "machine-readable storage device" are expressly defined to exclude propagating signals. That is, as used in any claim of this patent, none of the terms "tangible machine-readable medium," "non-transitory machine-readable medium," and "machine-readable storage device" may be construed as being implemented by a propagating signal.

[0177] In the above description, specific embodiments have been described. However, it is understood by those skilled in the art that various modifications and changes may be made without departing from the scope of the invention as set forth in the following claims. Therefore, the description and the accompanying drawings are to be considered in an illustrative rather than a restrictive sense, and all such modifications are intended to be included within the scope of the present teachings. Additionally, the described embodiments / examples / implementations should not be interpreted as mutually exclusive, but should be understood as potentially combinable, if such combinations are permitted in any way. In other words, any feature disclosed in any of the aforementioned embodiments / examples / implementations may be included in any of the other aforementioned embodiments / examples / implementations.

[0178] These benefits, advantages, solutions to problems, and any element(s) that make any benefit, advantage, or solution occur or become more prominent are not to be construed as critical, required, or essential features or elements of any or all of the claims. The invention as claimed is defined solely by the appended claims, including any amendments made during the pendency of this application and all equivalents of those claims as issued.

[0179] Furthermore, in this document, relational terms such as first and second, top and bottom, etc., may be used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. The terms "comprises," "comprises," "has," "having," "includes," "including," "contains," "containing," or any other variation thereof, are intended to cover a non-exclusive inclusion such that a process, method, article, or apparatus that comprises, has, includes, contains a list of elements includes not only those elements, but may also include other elements not expressly listed or inherent to such process, method, article, or apparatus. Elements beginning with "comprises one", "has one", "includes one", "contains one", in the absence of more constraints, do not exclude the presence of other identical elements in the process, method, article or device that includes, has, includes or contains the element. The terms "a" and "an" are defined as one or more, unless otherwise expressly stated herein. The terms "substantially", "approximately", "approximately", "about" or any other version of these terms are defined as close as understood by those skilled in the art, and in one non-limiting embodiment, these terms are defined as within 10%, within 5% in another embodiment, within 1% in another embodiment, and within 0.5% in another embodiment. The term "coupled" as used herein is defined as connected, although not necessarily directly connected or mechanically connected. A device or structure that is "configured" in a certain way is configured in at least that way, but may also be configured in ways that are not listed.

[0180] The abstract of the present disclosure is provided to allow the reader to quickly determine the nature of the present technical disclosure. This abstract is submitted with the understanding that it will not be used to interpret or limit the scope or meaning of the claims. In addition, in the above-mentioned specific implementations, it can be seen that various features are grouped together in various embodiments for the purpose of integrating the present disclosure. This method of disclosure should not be interpreted as reflecting the intention that the claimed embodiments require more features than those explicitly stated in the claims. On the contrary, as reflected in the following claims, the subject matter of the invention may lie in less than all the features of a single disclosed embodiment. Therefore, the following claims are thus incorporated into the specific implementations, wherein each claim represents itself as a subject matter claimed separately.< / tab> < / gs> < / tab> < / gs> < / tab> < / gs>

Claims

1. A barcode reader, comprising: case; an image acquisition assembly located at least partially within the housing and having a field of view (FOV), the image acquisition assembly being operable to capture image data associated with an environment present within the FOV; a user feedback component operable to provide a plurality of user feedback responses; as well as a controller communicatively coupled to the image acquisition component and the user feedback component, the controller configured to decode indicia present in the image data, wherein: The barcode reader may be configured to operate alternately in one of at least two modes; In a first mode of the at least two modes, the controller is configured to (i) instruct the user feedback component to generate a user feedback response of the first type in response to successfully decoding an indicia of the first type, and (ii) instruct the user feedback component to generate a user feedback response of the first type in response to successfully decoding an indicia of the second type; In a second mode of the at least two modes, the controller is configured to (i) instruct the user feedback component to generate a second type of user feedback response in response to successfully decoding the first type of indicia, and (ii) instruct the user feedback component to generate a third type of user feedback response in response to successfully decoding the second type of indicia; the first type of mark is different from the second type of mark; The second type of user feedback response is different from the third type of user feedback response; The second type of user feedback response is different from or the same as the first type of user feedback response; and The parameter(s) used to define the first type of marker and the second type of marker are at least one of predefined within the controller or user defined.

2. The scanner system according to claim 1, wherein: The user feedback response includes one or more of the following: auditory feedback, visual feedback, or tactile feedback.

3. The scanner system according to claim 1, wherein: The user feedback response is dependent upon context of the scanned barcode, the context being selected from at least one of: symbology, length, or presence of a unique string of characters in the scanned data.

4. The scanner system according to claim 1, wherein: The indicia includes one or more of: a positive scan result, a negative scan result, or a scan failure.