Method and system of touch-free vending

Information

  • Patent Grant
  • 11961373
  • Patent Number
    11,961,373
  • Date Filed
    Wednesday, June 30, 2021
    2 years ago
  • Date Issued
    Tuesday, April 16, 2024
    17 days ago
Abstract
A method and system to access vending machines via a touch-free user interface using a personal electronic device (PED) are described. For each vending session, a unique dynamic tag is generated and presented on a vending machine to be read via a camera. The tag is forwarded by the PED to a remote servicer, which accesses a remote database to determine real-time inventory of the vending machine. This inventory list is transmitted back to the PED for display to a user. The user selects a product from inventory using her PED. This selection is sent to the server, which then transmits instructions to the vending machine to dispense the selected product. The method is free of a requirement for the user to download an app. Security and payment are assured by the use of a unique dynamic tag for each vending session, displayed on or by the vending machine.
Description
BACKGROUND OF THE INVENTION

Different sorts of vending and self-service machines can be found in public spaces all around the world. Those are snack and beverage vending machines, ATMs, gas pumps, transit payment kiosks, and others. Traditionally these machines provide a user interface in the form of pushbuttons and a display of some kind. These interfaces are very constrained, not always intuitive, and do not provide users much extra information about the products or services offered by the machine. Another growing concern is that publicly available machines are not regularly cleaned, and the surface of their controls facilitates the spread of pathogen bacteria and viruses. The adoption of interactive screens with touch input in newer machines improves the situation. They are easier to clean and also capable of presenting additional information and better on-screen instructions. Still, more and more people would prefer to interact with public machines and make payments using their personal mobile electronic devices, such as smartphones or tablets.


Many methods exist to accomplish this goal. Typically, they require the user to install an associated application, or “app,” to their device. The application then leverages a connectivity technology such as direct short-range wireless networking, typically Bluetooth or Wi-Fi, a Near-Field Communication (NFC), or remote access over the internet.


These methods have multiple weaknesses. First, installing a dedicated app for a single-time interaction with a public machine is a significant inconvenience. Apps take space, clutter devices, affect their performance, and often annoy users with marketing notifications. For those reasons, the requirement to install an app can be seen as an obstacle to the adoption of the technology. Another problem is that the user's functional proximity to the machine is hard to verify. With remote access and wireless communications, users may initiate actions while not being physically present near the machine (proximal). At the minimum, it can be a source of confusion if several people are competing to access a single machine. In some cases, that is also a security concern. A technique known as geofencing is used to address this, but it relies on a positioning technology unreliable in covered spaces, especially in multi-story buildings. Identification of the machine can also be a problem when multiple machines are located close to each other, which is common for vending machines and laundry machines. When using a remote vending controller or interface, disambiguation of both users and vending machine is critical, which is difficult or reliably impossible with current technology.


SUMMARY OF THE INVENTION

Embodiments of the invention overcome weaknesses of the prior art. Described embodiments, scenarios, examples, and drawings are non-limiting.


In embodiments of the present disclosure, the identification of the machine and verification of the functional physical proximity is made through manually reading dynamically generated information from a tag generator with a mobile electronic device. Typically, a particular user of a particular vending machine stands in front of the machine, at a suitable distance from the machine, for a smartphone, or similar device, to read, with its camera, a dynamically generated QR code, or other machine readable code, on a display of the particular vending machine. In this way, both the particular user is disambiguated from other users, and the particular vending machine is disambiguated from other vending machines.


The information from the tag generator is then used to direct the user to a web page provided by a server. The page presents a control and payment interface for the user to interact with. As a result of user selections, after the payment is processed, the server generates requests and transmits them to the machine to dispense a product or render a service.


The tag generator in this disclosure is a device capable of generating and communicating a Uniform Resource Locator (URL) to a mobile electronic device so that the URL can be used to navigate a user client software such as a web browser to the corresponding resource. Non-limiting examples of a tag generator are a device showing a QR code on its display and an active Near Field Communication (NFC) tag generator. The tag generator may be a standalone device as well as a functional part of a larger system. The information encoded into the URL contains a session identifier unique to one interactive session.


In a first embodiment, the information from the tag generator includes a sequence-based parameter encoded into the URL as a compound part of the session identifier or as a separate parameter. The server checks the ordering of the requests. Every subsequent request is expected to be newer than the requests serviced before. Otherwise, it is rejected with or without error notification. That sequence-based parameter may be but not limited to a timestamp, a real-time clock time, a free-running counter value, or a sequential number of the session. A sequence-based parameter is also called a sequence number. Sequence numbers need not comprise a contiguous sequence of numbers of characters. Sequence number need not increase each time it is used. A sequence number may be generated from a random or pseudo-random sequence, provided that every sequence number is unique with respect to all sequence numbers used by the same vending machine.


In another embodiment, the information from the tag generator includes a time-based parameter encoded into the URL as a compound part of the session identifier or as a separate parameter. The server checks requests for expiration, preventing a URL from being and used later. If the timeout is exceeded, the request is rejected with or without error notification. That time-based parameter may be but not limited to a Unix epoch timestamp, a real-time clock time, a free-running counter value. Alternatively, that information may be a key in a time-based encryption scheme, such as timed-release encryption.


In yet another embodiment, information from the tag generator includes the identifier of the machine, encoded into the URL as a compound part of the session identifier or as a separate parameter. The identifier may be any sequence of characters assigned to the machine, such as but not limited to, a serial number of the machine, a sequential number assigned to the machine when it is first registered with the server, a universally unique identifier (UUID), a random number, or any combination of the above. The machine identifier may or may not be encrypted. The information about all registered machines with their identifiers is stored in a database accessible by the server.


In yet another embodiment, information from the tag generator includes a network address that allows the server to direct data packages to the machine. This information may be but not limited to a Media Access Control (MAC) address or an Internet Protocol (IP, e.g., IPv4, IPv6) address with a port number or any combination.


In yet another embodiment, the information from the tag generator includes data about the state of the machine, encoded into the URL as a compound part of the session identifier or as a separate parameter. A non-limiting example of the state would be the real-time product inventory in a vending machine.


In yet another embodiment, the session identifier is communicated by the tag generator to the server over the network connection every time it is generated. When the mobile electronic device requests the web page, the server uses the session identifier to identify the machine without exposing the machine identifier itself to the mobile electronic device.


In yet another embodiment, the server is remote to the machine and accessible over the network, such as a local network or the internet. In another embodiment, the server is executed on a processor within the machine itself.


In yet another embodiment, the machine contains a wired or wireless communication device such as but not limited to cellular, Wi-Fi, or Ethernet device. The server then transmits the action requests, such as a vending action with a product code, to the machine over a network connection.


In yet another embodiment, the machine contains a scanner such as but not limited to a barcode scanner, a two-dimensional barcode scanner, a QR code scanner, or a camera capable of scanning any of those codes. The server then transmits the action requests by instructing the mobile electronic device to show a code, such as but not limited to a barcode, a two-dimensional barcode, or a QR code on the screen. The user is instructed to present the screen of the mobile electronic device to the scanner on the machine.


In yet another embodiment, the machine has a wireless transceiver, such as but not limited to NFC or Bluetooth transceiver. The server then transmits the action requests by instructing the mobile electronic device to transmit those requests to the machine through a wireless connection such as but not limited to NFC connection or Bluetooth connection. The user may be instructed to hover their device over an NFC transceiver.


In yet another embodiment, a payment interface is embedded into the web page, allowing the user to make an online payment. A payment gateway then authorizes the payment, and the server processes the result of the authorization before the machine is requested to render a service or dispense a purchased item.


In yet another embodiment, the tag generator, a communication device, a processor, and an interface device are installed into a machine as a retrofit kit. The communication device connects the processor to the server through a network connection. The processor is connected to a pre-existing central controller of the machine either directly or through the interface device utilizing available electrical interfaces. The interface device is connected to the processor, the machine's controller, button inputs, and visual feedback outputs (such as Light Emitting Diodes, LCD or other display). The interface device is configured to emulate buttons being pressed and to collect the feedback given to the user by pre-existing output devices. The processor is configured to execute sequences of emulated inputs to the machine and process the outputs from the machine to achieve goals resulting from the user's interactions with the display data or web page. The processor may be additionally configured to emulate a cashless payment device. The processor may be additionally configured to collect telemetry data and report it to the server over the network connection.


Non-limiting examples of a machine that may be incorporated into the system according to the present disclosure include a traditional vending machine, a public washing machine, a carwash, a parking meter, a gas pump, and alike.





BRIEF DESCRIPTION OF THE DRAWINGS


FIG. 1 is a schematic diagram illustrating a first embodiment of the system arrangement and the purchase process.



FIG. 2 is a block diagram showing elements of the device and method.



FIG. 3 shows exemplary communication formats with the dynamic tag generator information.



FIG. 4 is a flowchart of exemplary tag generator device operation.



FIG. 5 is a flowchart of exemplary server operation.



FIG. 6 shows an exemplary format of data exchange between a server and a vending machine.



FIG. 7 is a schematic diagram illustrating a second embodiment of the system arrangement and the purchase process.



FIG. 8 is an exemplary system diagram incorporating a retrofitted vending machine.





DETAILED DESCRIPTION


FIG. 1 illustrates a preferred embodiment of a purchase process or method when controlling or using a vending machine with a personal mobile electronic device, such as a smartphone. A user 100 approaches the vending machine 101 and manually scans a QR code 123 from a tag generator 108 with a camera in or associated with their mobile electronic device 117. The mobile electronic device requests a web page or display data 124 unique to the vending machine from a server 111, such as over a network connection 121. User 100 interacts with the display data 124 to learn about the inventoried products and select a product to vend. After the user 100 selects a product, the server 111 receives a product request from the mobile electronic device 117. The server 111 then requests the checkout from a payment gateway 115, such as over a network connection 116. The server 111 facilitates redirection of the mobile electronic device 117 to a checkout interface provided by the payment gateway 115, such as over a network connection 122. After payment is processed, the mobile electronic device 117 is redirected to another display page provided by the server 111, such as over the network connection 121. The payment gateway 115 notifies the server 111 about the successful payment. The server 111 then requests the vending machine 101 to vend (i.e., dispense) the selected product, such as over a network connection 112. The vending machine 101 then receives a vending action with a product code from the server 111, vends (i.e., dispenses) the product, and notifies the server 111 about a successful vend operation. The server 111 then notifies the mobile electronic device 117 that the vending session is finished.


If dispensing of the product is unsuccessful, the vending machine 101 notifies the server 111, and the server 111 requests the payment processor 115 to issue a refund.


Manually scanning the QR code with the personal mobile electronic device's camera is a deliberate action that the user must take while holding their device near the machine to claim it for the vending session. This way, the user's proximity to the machine is verified. Some embodiments use NFC tag instead of the QR code tag to accomplish the same goal. In this case, the user needs to hold or move their device near the displayed, dynamic tag for it to be machine-read.


The QR code or other tag is unique, either globally or for that particular vending machine. In this way, the same tag cannot be used for more than one vending session.



FIG. 2 shows the system diagram of the vending system, according to a preferred embodiment of the present disclosure. The vending machine 101 contains a processor 102, connected to a communication device 103, to a product dispenser 104, to one or more cashless payment devices 105, to a bill validator 106, and a coin changer 107. The tag generator device 108 contains a processor 109 connected to a display 110. The server 111 is connected to the vending machine 101, such as over the network connection 112, through the communication device 103. The server 111 is also connected to a local or remote database 113 over an interface 114. The server 111 is further connected to the payment gateway 115, such as over the network connection 116. Mobile electronic device 117 contains a communication device 118, a camera 119, and a display 120. The mobile electronic device 117 is capable of communicating to the server 111 and the payment gateway 115 over the network connections 121 and 122 correspondingly, using the communication device 118. The vending machine 101 may additionally have at least one display 125 connected to the processor 102.


The processor 109 within the tag generator 108 generates dynamic information containing a session identifier. The identifier is then included in a web URL pointing to a resource on the server 111. The URL is encoded into a QR code 123 that is shown on the display 110. The display 110 is positioned such to be visible to the user.


The user of the mobile electronic device 117 activates the camera 119 and uses it to scan the QR code 123 from the display 110. The software on the mobile electronic device 117 reads the URL from the QR code 123 and opens a client software such as a mobile web browser to request the corresponding resource from the server 111, such as over the network connection 121.


When the server 111 receives the request from the mobile electronic device 117 it extracts and validates the session identifier. Then it extracts the identifier of the vending machine 101 and retrieves the information associated with the machine from the database 113. The server then produces a web page with the display data 124 matching the configuration and the state of the machine and provides it to the client software on the mobile electronic device 117. The client software then presents the web page on the display 120 as the display data 124 for the vending machine 101. The display data 124 may also comprise elements for user selection or input.


The user can interact with elements of the display data 124 to view additional information about the products inventoried by the vending machine 101. When those interactions happen, additional information may be transmitted between the mobile electronic device 117 and the server 111 as necessary. The user can select a product to be purchased. After the selection, the server 111 receives a product request from the mobile electronic device 117. It then requests the checkout from a payment gateway 115, such as over a network connection 116, and redirects the client software on the mobile electronic device 117 to a web page provided by the payment gateway 115. The client software then exchanges information with the payment gateway 115, such as over the network connection 122, to facilitate the payment process. After finishing the payment, the payment gateway 115 redirects the client software on the mobile electronic device 117 to another web page provided by the server 111.


After payment is received, the payment gateway 115 notifies the server 111 about the payment, such as over the network connection 116. The server 111 then generates a vending action for the machine to dispense the product and transmits the request over the network connection 112. The processor 102 in the vending machine 101 receives the vending action with a product code from the server 111, such as over the network connection 112 through the communication device 103. The processor 102 interprets the request and executes it to dispense the product using the product dispenser 104. The processor 102 then notifies the server 111 about a successful or unsuccessful product dispensing. The server, in turn, generates the notification for the user and transmits it to the mobile electronic device 117, such as over the network connection 121.


If the product dispensing was not successful, the server 111 requests the payment gateway 115 to issue a refund.


The user may be additionally presented with an option to pay for their purchase on the machine 101. In this case, when the user requests the checkout, no redirection to a page provided by the payment gateway 115 happens. Instead, the server 111 generates a vending action to the machine to process payment first and then dispense the product. The processor 102 in the vending machine 101 receives the request from the server 111. The processor 102 interprets the request and waits for the user to make payment using the cashless payment device 105, the bill validator 106, the coin changer 107, or some combination of those. The processor 102 may or may not use any additional displays or other output devices on the machine 101 to prompt the user to make a payment. When payment is received, the processor 102 activates the product dispenser 104 to dispense the product. The processor 102 then notifies the server 111 about successful or unsuccessful product dispensing. The server, in turn, generates the notification for the user and transmits it to the mobile electronic device 117, such as over the network connection 121.


The server 111 and the processor 102 may impose a timeout on receiving the payment.


The tag generator 108 may be placed on the vending machine 101, near or proximal to the vending machine 101, or combined with any part of the vending machine 101. As one example, the processor 109 and the processor 102 may be combined into a single processor. The QR code 123 may be shown on the display 125. Similarly, the tag generator 108 may be combined with one of the cashless payment devices 105.


The database 113 may be of any type, such as but not limited to relational database, NoSQL database, document storage, text file, or any other. The database may contain the information about the real-time product inventory in the vending machine 101, so the product selection may be presented to the user by the server 111 as part of the display data 124. The server 111 may keep track of the real-time inventory and update the database 113 to decrease the inventory every time the product is successfully dispensed.


The processor 102 may notify the server 111 about every transaction in the vending machine accomplished with the cashless payment device 105, the bill validator 106, the coin changer 107, any other available payment method, or without payment. The server 111 may use the notifications to update the database 113 with real-time inventory changes. The server 111 may also write into the database 113 an audit log of all transactions.


The processor 102 may additionally notify the server 111 about any events related to the vending machine 101, such as but not limited to operational failures. The server may store the events in the database 113 and also notify the machine operator when the machine needs service. The database 113 may contain additional information about the products, such as but not limited to product images, detailed description, ingredients, nutritional information. The server 111 may present this information in the display data 124 along with any additional information from external sources.


In some embodiments of the present disclosure, the payment gateway 115 is combined with the server 111, and the payment interface is directly embedded into the display data 124. In such a case, no redirection to the payment interface is necessary.



FIG. 3 shows examples of the URL that can be presented on the tag generator. URL 201 contains a compound session identifier 202 within the URL path section. The identifier comprises the machine identifier 203 and the timestamp 204. Here, the timestamp is the Unix epoch time at the moment when the tag was generated. Alternatively, the timestamp may be replaced with a value of a free-running counter, a sequential number of the generated tag, or any other unique identifier.


URL 205 shows the session identifier encoded as key-value pairs within the query section of the URL.


In URL 206, the machine identifier part of the session identifier is encoded as a subdomain.


In URL 207, the session identifier is encoded according to the Base64 encoding scheme for efficiency. 208 is a QR code representation of the URL 207.


Any part of the session identifier may be encrypted for security purposes. Authentication of the URL by the server is preferred, but optional.



FIG. 4 shows an operational sequence of the processor 109 within the tag generator 108. After the power-up 401, the processor 109 generates a new session identifier at step 402. In the preferred embodiment of the present disclosure, the session identifier comprises a machine identifier and the Unix epoch time as a timestamp. The timestamp part may undergo optional security encryption with any appropriate encryption algorithm, such as those well-known in the art. Encryptions may include error checking, such as parity, or error correction, such as Reed Solomon codes. An example of appropriate encryption is the Advanced Encryption Standard (AES). Encryption may also include authentication. Next, at step 403, the processor 109 creates a URL with the domain name of the server 101 and the session identifier. At this step, the session identifier may be encoded according to Base64 or another appropriate scheme to get a compact sequence of characters suitable for inclusion into a URL. Once the URL is created, it is encoded as a QR code at step 404. At step 405, the QR code is presented on the display 110, comprising a generated tag. After that, at step 406, the processor 109 waits for an expiration of a pre-configured timeout to repeat the whole process from step 402.


In some embodiments, QR codes or other machine-readable codes are encrypted. Public key encryption may be used; however, this encryption method requires dissemination of public and private keys, and so is not a preferred embodiment as of the filing date. Tags may include public keys, for either the vending machine, the vending company, or the user, in any combination.


In an alternative embodiment, if the precise time information is not available to the processor 109, a value of a free-running counter may be used instead. In such a case, a counter may be battery-backed, allowing it to keep counting in the event of power interruption.


Alternatively, a sequentially increasing number may be used for every new session identifier. The last number may be stored by the processor 109 in a non-volatile memory to withstand the power interruption.



FIG. 5 shows an operation cycle performed by the server 111 upon receiving a new request for a web page from the mobile electronic device 117. The cycle starts at step 501 when the server 111 receives a request for a web page with the URL generated by the processor 109. First, on step 502, the server 111 decodes the session identifier from a transport encoding such as Base64 and separates the machine identifier 203 and the timestamp 204 parts. Next, on step 503, the server 111 checks if the session identifier has the correct order based on the timestamp 204. The order is considered correct if the timestamp 204 falls within the expected range of values around the current time. The range accounts for an acceptable delay between the session identifier being generated by the processor 109 and the request being sent by the mobile electronic device 117. The range may further account for the inaccuracy of the internal clock of the processor 109. After the ordering is verified, on step 504, the server 111 queries the database 113 to verify the uniqueness of the session identifier. If the session with the same identifier is not found, the identifier is considered to be unique, and the server then proceeds to step 505 to create a new interaction session by adding a record to the database 113. Then on step 506 the server 111 retrieves from the database 113 the information specific to the machine 101 identified by the machine identifier 203 in the URL. The server 111 then checks the online status of the machine by comparing the time of the last heartbeat communication received from the machine to the present time. If the machine 101 is online, the server 111 proceeds to step 508 and serves the web page comprising the display data 124 to the mobile electronic device 117.


The display data 124 is specific to the machine 101 identified by the machine identifier 203. Therefore, it may vary depending on the type of the machine, its individual settings, and the real-time product inventory.


If at step 503 it was determined that the session identifier is of wrong order, or at step 504 it was determined that the session identifier is not unique, the server transitions to step 509 and serves the error page to the mobile electronic device 117. The server also proceeds to step 509 if at step 507 it was determined that the machine 101 is offline. There may be other reasons, not shown in the figure, for the server to serve the error page instead of the display data 124. The content of the error page may vary based on a specific error reason.


In alternative embodiments that use a value of a free-running counter instead of the Unix epoch time, at step 503, the server 111 retrieves from the database 113 the offset between the time-base of the tag generator processor 109 and real time. In another embodiment, if the sequential numbering is used instead of the timestamp, the server 111 additionally retrieves the previous valid value for the machine 101 identified by the machine identifier 203 from the database 113. The server then checks that the new value is larger than the previous value. Finally, depending on the particular implementation, steps 503 and 504 may be reordered or combined.



FIG. 6 shows an example of the data exchange between the server 111 and the vending machine 101. The request 601 in JSON format specifies the vending action, the product code, the product price in cents, and the prepaid flag. A prepaid flag indicates to the machine 101 that the payment has been processed through the payment gateway 115, and the product is to be dispensed immediately. If the prepaid flag is set to false, the machine 101 is waiting for the payment to be made with the bill validator 106, the coin changer 107, the cashless payment device 105, or a combination of everything above before the product is dispensed.


The response 602 replicates the parameters from the request 601 and indicates the successful vending.



FIG. 7 illustrates a system arrangement and a purchase process when controlling a vending machine with a mobile electronic device, according to an alternative embodiment of the present disclosure. Adding a code reader 701 to the vending machine 101 allows eliminating the network connection 112 between the vending machine 101 and the server 111.


To initiate the purchase, in one embodiment, the user 100 approaches the vending machine 101 and manually scans the QR code 123 from the tag generator 108 with the camera in or associated with their mobile electronic device 117. Additionally, to the session identifier 202, the URL in the QR code 123 comprises the identification of the real-time product inventory in the machine 101. The mobile electronic device requests a web page from the server 111, such as over the network connection 121, using the URL from the QR code 123. When the server 111 receives the request, it first decodes the information about the real-time product inventory from the URL. It then generates a web page, for example, comprising the display data 124 representing the run-time inventory in the vending machine 101. The user 100 then interacts with the display data 124 to learn about the products and select a product for checkout. When a product is selected, the server 111 receives a product request from the mobile electronic device 117. The server 111 then requests the checkout from the payment gateway 115, such as over the network connection 116. The server facilitates redirection of the mobile electronic device 117 to the checkout interface provided by the payment gateway 115, such as over the network connection 122. After payment is processed, the mobile electronic device 117 is redirected to another page provided by the server 111, such as over the network connection 121. The payment gateway 115 notifies the server 111 about the successful payment. The server 111 then generates a securely encrypted vending code 702 comprising a product code and a vending action for the vending machine 101 to dispense the product. Next, the vending code 702 is transmitted to the mobile electronic device 117. The user 100 demonstrates the vending code 702 from the display of the mobile electronic device 117 to the code reader 701 placed on the vending machine 101. The vending machine 101 receives the product code by optically reading the vending code 702 from the display of the mobile electronic device 117 and dispenses the product.


Disambiguation of both users and vending machines is accomplished with the steps and elements of disclosed methods and systems. See above disclosure for FIG. 1 for discussion of disambiguation.


For a preferred embodiment, a user performs two manual steps with their smartphone or other personal mobile electronic device.



FIG. 8 shows a system diagram of the vending machine 101 with a retrofit device 800 for controlling the vending machine 101 with a personal mobile electronic device 117 according to the present disclosure. The retrofit device 800 is connected to the vending machine controller 801, payment devices 808, a keypad 811, and a vending machine display 812. The retrofit device 800 comprises a processor 802, an interface device 803, a communication device 804, and a QR code display 805. The processor 802 is configured to communicate to the vending machine controller 801 over an MDB interface 806 and emulate peripheral payment devices. On the other hand, the processor 802 is also configured to communicate over a second MDB interface 807 with the peripheral payment devices 808 and emulate a vending machine controller. The processor 802 is further configured to conduct the functions of the tag generator 108 and show QR codes on the display 805. The processor 802 is further configured to communicate to the server 111 through the communication device 804. The processor 802 is further configured to control the interface device 803. The interface device 803 is connected to the vending machine controller 801 over a keypad interface 809 and a display interface 810. The interface device 803 is also connected to the keypad 811, and the vending machine display 812.


When the processor 802 receives a product code and a vending action to dispense a prepaid product such as the request 601, it first communicates a credit to the vending machine controller 801 over the MDB interface 806. The processor 802 then emulates the position selection corresponding to the product code on the keypad interface 809 with the help of the interface device 803.


When the processor 802 receives a product code and a vending action to dispense a product without the prepaid flag being set, it first waits for the peripheral payment devices 808 to establish a credit over the MDB interface 807 and then communicates the credit to the vending machine controller 801 over the MDB interface 806. The processor 802 then emulates the position selection corresponding to the product code on the keypad interface 809 with the help of the interface device 803.


After emulating the position selection, the processor 802 waits for the vending machine controller 801 to report the result of the vend. The processor 802 then reports the result to the server 111.


The processor 802 is also configured to communicate every purchase transaction reported on the MDB interface 806 to the server 111. The server 111 uses that data for audit and real-time inventory tracking.


The processor 802 is also configured to report detectable failures of the vending machine 101 to the server 111 for remote diagnostics. It is further configured to communicate the state of the display 812 collected from the display interface 810 with the help of the interface device 803 to the server 111, allowing remote control and diagnostics.


In further embodiments, a dynamic tag may be audible instead of visible. In such embodiments, an audio signal comprises digital data consistent with the data described in this disclosure for a dynamic tag. The personal mobile electronic device then uses a microphone and suitable software to listen to, decode, and respond to the audio presented by the vending machine. Note that a short-range audio signal still permits disambiguation of multiple users and multiple vending machines, a nexus feature of embodiments. “Proximal,” for such embodiments, means functionally within a suitable distance to detect and decode the audible tag signal. In such embodiments, a vision-impaired user is able to use vending machines. In such embodiments, product selection by a user may be done with audio communication. For example, rather than “displaying” products on the personal electronic device, the product description would be machine read to the user. Voice recognition, for example, may be used for the user to communicate with the personal electronic device. Claims and embodiments should be construed to include such audible, rather than visible, implementation.


Definitions

“Application” or “App”—in relation to personal mobile electronic devices is a piece of software executable by a mobile electronic device and designed to accomplish a specific goal, e.g., buying products from a vending machine. An application needs to be downloaded and installed on the device before it can be used.


“Disambiguation,” “disambiguate”—a method to uniquely identify a person, device, or data, from a different person, device or data, where they might otherwise conflict. For example, two people attempting to use the same vending machine at the same time. As a second example, one person proximal to more than one vending machine, as is common when there are multiple vending machines side-by-side.


“Dispensing”—a vending machine providing a vended product, requested by a user, to the user. The vended product may be associated with the vending machine and may be a specific service, such as a car wash. Vouchers and cards may be a vended product, wherein the voucher or card provides a remote or future service, such as cell-phone minutes, boarding pass, luggage check, discount coupon, a pre-paid shipping, or a pre-paid meal served remotely. A dispensed product may be a physical item such as a can, bottle, or card. A dispensed product may be a quantity of a liquid, such as coffee, car-wash water, or shower water. Another name for “dispense” is “vend.” Another name for “dispensing” is “vending.”


“MDB”—Multi-Drop Bus, a standardized communication bus and interface(s) typically used inside a vending machine. MDB should be construed broadly to include any standardized communication used by or in vending machines, vending machine equipment, or vending accessories.


“Proximal”—in the context of embodiments of this invention, a user is “proximal” to a personal electronic device when the user may functionally read a screen of the device and functionally control the device. “Functionally read,” for this definition, includes audio communication and other methods of a user to communicate with a personal electronic device if the user is, for example, reading impaired. In the context of embodiments of this invention, a personal electronic device is proximal to a vending machine when the personal electronic device is functionally close enough to the vending machine that an optical sensor, such as a camera, in the personal electronic device, is able to machine-read a dynamic tag presented by the vending machine.


A user is “proximal” to a vending machine when the user is functionally close to the vending machine. For example, being able to readily take a vended product. For many vending machines, a proximal user is able to functionally see one or more products available to vend. For products that are not readily visible, a proximal user is able to functionally read type on the face of the vending machine.


“Product code”—data that uniquely identifies a product to a vending machine. Here, “product” refers to a specific type of product, such as “12-oz can of Pepsi Diet Cola,” rather than one specific can. A product code may include a location in a vending machine, such as a coil ID. Different vending machines will typically have different product codes, even for the same product, such as a “12-oz can of Pepsi Diet Cola.” Product codes may comprise a Universal Product Code (UPC) or product SKU, or a proprietary code.


“QR code,” “barcode,” or “matrix code” is machine-readable, visible code, such as may be read by a camera on a personal electronic device. A “dynamic” code is one that may be altered dynamically, such as generated by a processor and displayed on a display device. Embodiments use an electronic code, which may not be optically visible, providing the equivalent purpose as a dynamic, visible code. Such codes may be single-use, associated with a specific transaction or sale. Such codes may be encrypted. Such codes may be human-readable.


“Real-time inventory” or “real-time product inventory”—is the list of the products that can be immediately dispensed by a vending machine.


“Receiving”—term wherein a receiving device receives data from a sending device. Such data may be transmitted directly between the sending device and the receiving device, or more typically, the receiving is via one or more intermediary devices, such as switches, routers, access points, optical communication, cellular communication, reflectors, relays, personal electronic devices, and the like.


“Server”—is broadly construed as a term in the art, typically a piece of computational hardware or a virtual portion of computational hardware, usually on a communication network. The term also refers to a piece of software that provides functionality to “client” software by servicing its requests.


“Session” or “vending session”—is a time or functional sequence associated with a single transaction or a grouped in time a series of transactions by a single user. Sessions are typically unique. A “transaction” is typically a selection by a single user and then vending, dispensing or enabling the selected product or service. Some transactions may involve more than one product or service, yet are a single selection by a user. A “session” may be such a single transaction or may include a group of sequential transactions for or by a single user.


“Tag generator”—A tag generator an element capable of displaying or transmitting a unique tag to a user. Non-limiting examples of a tag generator are a device showing a QR code on its display and an active Near Field Communication (NFC) tag generator. The tag generator may be a standalone device or an element of an embodiment.


“Tag”—A tag comprises machine-readable data associated with a specific transaction, purchase, session, or a portion thereof. A tag may also be human-readable. In a preferred embodiment, a tag is presented in a QR code or functional equivalent, readable by a camera and associated processor and software in a personal electronic device. A tag may comprise a URL. A tag may comprise a session identifier. A tag may comprise data to direct a user, or a transaction of a user or portion thereof, to remote data or communication resource, such as a web page. A tag is typically unique to a session.


“URL”—means “Uniform Resource Locator,” to be additionally construed as any standardized communication or data format for locating and accessing a server, file, or data path on a network. It may comprise a host name, a domain name, MAC address, IPv4 or IPv6 address, and other data.


“User”—is broadly construed as a person using embodiments of this invention. An alternative name for a user is a customer. A user may also be construed as a device, such as a personal electronic device, being operated by a human in the capacity of a human user or customer using embodiments of this invention.


“Vending action”—an action for a vending machine such as “vend” or “refund.” A vending action may comprise information such as audio to play (e.g., “thank you”) or images to display on a screen, such as additional recommended products or advertisements. A “vending action” may be a physical action by the vending machine, or it may be data or a command to perform an associated physical vending action. Another name for “vend” is “dispense.”


“Vending machine”—means a physical machine that dispenses a specific product or specific service, upon payment or payment method, on demand, typically by a user. Typical products vended include: beverages, snacks, meals, liquids, debit or access cards, vouchers, labels, tokens, insurance, cables, batteries, tools, ice, water, travel tickets, travel convenience items, books, gasoline or other fuel, car washes, showers, rest or sleeping pods, and the like.


“Web page”—an interactive document provided by a server and displayed to a user of mobile electronic device in a client software such as a web browser. One special type of a functionally-rich web page is known as “Progressive Web Application” (PWA).


Ideal, Ideally, Optimal and Preferred—Use of the words, “ideal,” “ideally,” “optimum,” “should,” and “preferred,” when used in the context of describing this invention, refer specifically to the best mode for one or more embodiments for one or more applications of this invention. Such best modes are non-limiting and may not be the best mode for all embodiments, applications, or implementation technologies, as one trained in the art will appreciate.


All examples are sample or exemplary embodiments. In particular, the phrase “invention” should be interpreted under all conditions to mean “an embodiment of this invention.” Examples, scenarios, and drawings are non-limiting. The only limitations of this invention are in the claims.


May, Could, Option, Mode, Alternative and Feature—Use of the words “may,” “could,” “option,” “optional,” “mode,” “alternative,” “typical,” “ideal,” and “feature,” when used in the context of describing this invention, refer specifically to various embodiments of this invention. Described benefits refer only to those embodiments that provide that benefit. All descriptions herein are non-limiting, as one trained in the art appreciates.


Embodiments of this invention explicitly include all combinations and sub-combinations of all features, elements, and limitations of all claims. Embodiments of this invention explicitly include all combinations and sub-combinations of all features, elements, examples, embodiments, tables, values, ranges, and drawings in the specification and the drawings. Embodiments of this invention explicitly include devices and systems to implement any combination of all methods described in the claims, the specification, the abstract, and the drawings. Embodiments of the methods of this invention explicitly include all combinations of dependent method claim steps, in any functional order. Embodiments of the methods of invention explicitly include, when referencing any device claim or limitation thereof, to any and all other device claims, including all combinations of elements in device claims. Claims for devices and systems may be restricted to perform only the methods of embodiments or claims.

Claims
  • 1. A method of controlling a vending machine with a proximal mobile electronic device comprising the steps: (a) generating by a tag generator a dynamic tag unique to a vending session, wherein the dynamic tag comprises a URL;(b) presenting the dynamic tag to the proximal mobile electronic device;(c) accessing a remote server, by the proximal mobile electronic device, using the dynamic tag;(d) transmitting, from the remote server, display data unique to the vending machine; wherein the display data is consistent with a real-time product inventory in the vending machine;(e) displaying, on the proximal mobile electronic device, the display data;(f) receiving, by the remote server, a product request for a product, from the proximal mobile electronic device; wherein the product is displayed by the display data;(g) receiving, by the vending machine, from the remote server, a product code associated with the product in the real-time product inventory;(h) receiving, by the vending machine, from the remote server, a vending action associated with the product in the real-time product inventory; and(i) dispensing, by the vending machine, the product;wherein: the method is free of a requirement for a user to download an associated application (“App”) to the proximal mobile electronic device.
  • 2. The method of claim 1 wherein: the display data is a web page.
  • 3. The method of claim 1 wherein: the dynamic tag is unique with respect to all other dynamic tags used by the vending machine.
  • 4. The method of claim 1 wherein: the dynamic tag comprises a sequence number that is not repeated for any other dynamic tag used by the vending machine.
  • 5. A system comprising: a vending machine, a tag generator, and a server; wherein the system is configured to implement, in conjunction with a proximal mobile electronic device, the steps of claim 1.
  • 6. The method of claim 1, wherein: the URL comprises identification of the real-time product inventory in the vending machine.
  • 7. The method of claim 1, wherein: the receiving, by the vending machine, from the remote server, the product code associated with the product in the real-time product inventory, is via the proximal mobile electronic device.
  • 8. The method of claim 7, wherein: the receiving, by the vending machine, from the remote server, the product code associated with the product in the real-time product inventory, is via optically reading, by the vending machine, displayed on the proximal mobile electronic device, a vending code.
CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims priority to U.S. Provisional Application No. 63/047,047 filed Jul. 1, 2020 by Igor Shturma entitled, “Method of Controlling a Machine with a Handheld Mobile Device”, which is incorporated by reference herein.

US Referenced Citations (469)
Number Name Date Kind
3270918 Goodrich et al. Sep 1966 A
5165575 Scott Nov 1992 A
5181631 Credle, Jr. et al. Jan 1993 A
5318197 Martindale et al. Jun 1994 A
5566732 Nelson Oct 1996 A
6230767 Nelson May 2001 B1
6234222 Nelson May 2001 B1
6237652 Nelson May 2001 B1
6345729 Santy, Jr. et al. Feb 2002 B1
6424884 Brooke, Jr. et al. Jul 2002 B1
6564999 Saveliev et al. May 2003 B1
6572016 Saveliev et al. Jun 2003 B2
6584309 Wingham Jun 2003 B1
6600969 Sudolcan et al. Jul 2003 B2
6616037 Grimm et al. Sep 2003 B2
6684920 Seitz et al. Feb 2004 B2
6759072 Gutwein et al. Jul 2004 B1
6764003 Martschitsch et al. Jul 2004 B1
6850816 Garratt Feb 2005 B2
6935532 Tinucci et al. Aug 2005 B2
6945157 Brown et al. Sep 2005 B2
7004355 Crisp, III et al. Feb 2006 B1
7031804 Brooke, Jr. et al. Apr 2006 B2
7032818 Thomas et al. Apr 2006 B2
7110954 Yung et al. Sep 2006 B2
7197377 Knepler Mar 2007 B2
7223427 Knepler May 2007 B2
7257547 Terase Aug 2007 B1
7265673 Teller Sep 2007 B2
7320414 Davis Jan 2008 B2
7331483 Bhimani et al. Feb 2008 B2
7353850 Grewie et al. Apr 2008 B2
7387239 Thomas et al. Jun 2008 B2
7439859 Humphrey Oct 2008 B2
7445133 Ludovissie et al. Nov 2008 B2
7455867 Gutwein et al. Nov 2008 B1
7458510 Zhou Dec 2008 B1
7464835 Coronado et al. Dec 2008 B2
7574377 Carpelli Aug 2009 B2
7593867 Deakin et al. Sep 2009 B2
7611052 Gosi et al. Nov 2009 B2
7617850 Dorney Nov 2009 B1
7624895 Haskayne Dec 2009 B2
7627496 Walker et al. Dec 2009 B2
7637205 Greiwe et al. Dec 2009 B2
7651008 Sher et al. Jan 2010 B2
7654191 Greenwald et al. Feb 2010 B2
7757896 Carpenter et al. Jul 2010 B2
7762181 Boland et al. Jul 2010 B2
7779099 Raghunathan et al. Aug 2010 B2
7806294 Gatipon et al. Oct 2010 B2
7813834 Sudolcan et al. Oct 2010 B2
7845375 Dorney Dec 2010 B2
7881822 Thornton et al. Feb 2011 B2
7889182 Romanyszyn et al. Feb 2011 B2
7890209 Knepler Feb 2011 B2
7899713 Rothschild Mar 2011 B2
7900799 Kuzar et al. Mar 2011 B2
7913878 Baron et al. Mar 2011 B1
7918156 Greenwald et al. Apr 2011 B2
7972639 Guerrero et al. Jul 2011 B2
7997448 Leyva Aug 2011 B1
8015088 Phillips et al. Sep 2011 B2
8032420 Dziaba et al. Oct 2011 B2
8062684 Gutwein et al. Nov 2011 B2
8091735 Girard et al. Jan 2012 B2
8121917 Insolia et al. Feb 2012 B2
8127805 Dorney Mar 2012 B2
8130083 Dorney Mar 2012 B2
8151832 Dorney Apr 2012 B1
8155784 Lowe et al. Apr 2012 B2
8162176 Rudick Apr 2012 B2
8162210 McInerney et al. Apr 2012 B2
8176948 Carrig May 2012 B2
8181822 Doelman et al. May 2012 B2
8245739 Wade et al. Aug 2012 B1
8250972 Santoiemmo et al. Aug 2012 B2
8251258 Rudick et al. Aug 2012 B2
8332272 Fisher Dec 2012 B2
8333301 Majer Dec 2012 B2
8335592 Deo et al. Dec 2012 B2
8340815 Peters et al. Dec 2012 B2
8352323 Fisher Jan 2013 B2
8408255 Wade et al. Apr 2013 B1
8413884 Lim et al. Apr 2013 B2
8417377 Rothschild Apr 2013 B2
8434319 Klier et al. May 2013 B2
8434642 Rudick May 2013 B2
8442674 Tilton et al. May 2013 B2
8459043 Bertone Jun 2013 B2
8473864 Segal et al. Jun 2013 B2
8490829 Deo et al. Jul 2013 B2
8511348 Lillard, Jr. Aug 2013 B2
8515574 Studor et al. Aug 2013 B2
8520897 Boncyk et al. Aug 2013 B2
8523065 Wade et al. Sep 2013 B1
8561830 Hallberg Oct 2013 B2
8565916 Zhang et al. Oct 2013 B2
8584900 Metropulos et al. Nov 2013 B2
8600899 Davis Dec 2013 B1
8610536 Libby et al. Dec 2013 B2
8610684 Kalu et al. Dec 2013 B2
8635164 Kalu et al. Jan 2014 B2
8688277 Studor et al. Apr 2014 B2
8718818 Nordbryhn May 2014 B2
8739840 Mattos, Jr. et al. Jun 2014 B2
8744618 Peters et al. Jun 2014 B2
8744939 Phillips et al. Jun 2014 B2
8751037 Peters et al. Jun 2014 B2
8755932 Peters et al. Jun 2014 B2
8763918 Lillard, Jr. Jul 2014 B2
8768505 Thompson Jul 2014 B2
8774963 Signorelli et al. Jul 2014 B2
8776838 Dorney Jul 2014 B1
8781622 Mockus et al. Jul 2014 B2
8788090 Rothschild Jul 2014 B2
8788359 Stache et al. Jul 2014 B2
8798799 Deo et al. Aug 2014 B2
8800867 Majer Aug 2014 B2
8805594 Shah et al. Aug 2014 B2
8814000 Rudick Aug 2014 B2
8825538 Insolia et al. Sep 2014 B2
8833241 Santoiemmo Sep 2014 B2
8839343 Wang Sep 2014 B2
8851329 Rudick et al. Oct 2014 B2
8863649 Rao et al. Oct 2014 B1
8880427 Jones Nov 2014 B1
8899280 Deo et al. Dec 2014 B2
8902818 Chu et al. Dec 2014 B2
8903737 Cameron et al. Dec 2014 B2
8910674 Segiet et al. Dec 2014 B2
8942628 Haverinen Jan 2015 B2
8945374 Chase Feb 2015 B2
8959028 Canter et al. Feb 2015 B2
8960075 Traitler et al. Feb 2015 B2
8960500 Petrus et al. Feb 2015 B2
8972048 Canora et al. Mar 2015 B2
8996178 Studor et al. Mar 2015 B2
9014846 Newman Apr 2015 B2
9020635 Hortin Apr 2015 B2
9023245 Chakravarti et al. May 2015 B2
9026245 Tilton et al. May 2015 B2
9045323 Crane et al. Jun 2015 B2
9051162 Peters et al. Jun 2015 B2
9054818 Wang Jun 2015 B2
9061879 Patthey Jun 2015 B2
9071926 Krishnan et al. Jun 2015 B2
9092768 Breitenbach et al. Jul 2015 B2
9102508 O'Keefe, Jr. et al. Aug 2015 B2
9107449 Njaastad et al. Aug 2015 B2
9111271 Dennis Aug 2015 B2
9111303 Nicol et al. Aug 2015 B2
9111312 Jones Aug 2015 B2
9113749 Castellani et al. Aug 2015 B2
9135613 Dennis Sep 2015 B2
9149152 Cahen et al. Oct 2015 B2
9169112 Chase et al. Oct 2015 B2
9199833 Scarvelli Dec 2015 B2
9212040 Segiet et al. Dec 2015 B2
9218704 Lim et al. Dec 2015 B2
9245402 Green et al. Jan 2016 B2
9245403 Geigel et al. Jan 2016 B2
9246611 Wang Jan 2016 B2
9265375 Knepler Feb 2016 B2
9271141 Egeler et al. Feb 2016 B1
9297577 Anselmino et al. Mar 2016 B2
9305296 Burger Apr 2016 B1
9334149 Dorney May 2016 B2
9334150 Ost et al. May 2016 B1
9346659 Brown May 2016 B2
9349238 Tkachenko et al. May 2016 B2
9365406 Hortin Jun 2016 B2
9373091 Belser et al. Jun 2016 B1
9434596 Carpenter et al. Sep 2016 B2
9445259 Sheth et al. Sep 2016 B2
9454868 Hirshbain Sep 2016 B2
9457928 Evers et al. Oct 2016 B2
9472043 Subramanian et al. Oct 2016 B2
9473478 Subramanian et al. Oct 2016 B2
9475683 Givens et al. Oct 2016 B2
9495616 Carbonini Nov 2016 B2
9495673 Cameron et al. Nov 2016 B2
9499385 Studor Nov 2016 B1
9499387 Nicol et al. Nov 2016 B2
9511988 Hernandez et al. Dec 2016 B2
9521922 Deo et al. Dec 2016 B2
9527715 Boggs et al. Dec 2016 B2
9533783 Talarico Jan 2017 B2
9533867 Hortin Jan 2017 B2
9536236 Hay Jan 2017 B2
9595058 Khalid Mar 2017 B2
9600850 Holman et al. Mar 2017 B2
9624460 Wunder Apr 2017 B2
9646314 Moore et al. May 2017 B2
9647777 Wang May 2017 B2
9666013 Want et al. May 2017 B2
9679329 Jones Jun 2017 B2
9701530 Kline et al. Jul 2017 B2
9721060 Chung et al. Aug 2017 B2
9751744 Grottini Sep 2017 B2
9751745 Grottini Sep 2017 B2
9764935 Jersey et al. Sep 2017 B2
9783403 Tansey, Jr. Oct 2017 B2
9803914 Anselmino et al. Oct 2017 B2
9809437 Tansey, Jr. Nov 2017 B2
9870670 Yau Jan 2018 B2
9898884 Arora et al. Feb 2018 B1
9911267 Signorelli et al. Mar 2018 B2
9926186 Nicol et al. Mar 2018 B2
9932216 Hernandez et al. Apr 2018 B2
9934657 Tkachenko et al. Apr 2018 B2
9942796 Raleigh Apr 2018 B2
9959530 Geigel et al. May 2018 B2
9975752 Keating et al. May 2018 B2
10009351 Choi Jun 2018 B2
10019864 Tomkins et al. Jul 2018 B2
10031505 Martindale et al. Jul 2018 B2
10046959 Rudick Aug 2018 B2
10057709 Wegelin et al. Aug 2018 B2
10074083 Westby et al. Sep 2018 B2
10083430 Hay Sep 2018 B2
10101080 Willis et al. Oct 2018 B2
10109143 Signorelli et al. Oct 2018 B2
10127419 Tungala Nov 2018 B1
10158721 Jarnagin, III Dec 2018 B2
10227226 Jersey et al. Mar 2019 B2
10252149 Huang et al. Apr 2019 B2
10255746 Peters et al. Apr 2019 B2
10315907 Segiet et al. Jun 2019 B2
10328769 Ferguson et al. Jun 2019 B2
10377623 Arcand Aug 2019 B2
10380822 Signorelli et al. Aug 2019 B2
10384925 Cuppari et al. Aug 2019 B2
10410272 Johnson et al. Sep 2019 B1
10417624 Salvucci et al. Sep 2019 B2
10433670 Flick Oct 2019 B2
10438184 Barragan et al. Oct 2019 B2
10445754 Snider et al. Oct 2019 B2
10460547 Yau Oct 2019 B2
10482443 Suelberg Nov 2019 B2
10489763 Kamat Nov 2019 B2
10489868 Long, II Nov 2019 B2
10497200 Guar et al. Dec 2019 B2
10504171 Khalid Dec 2019 B2
10540702 Conforti Jan 2020 B2
10542838 Rithener et al. Jan 2020 B2
10544028 Guy et al. Jan 2020 B2
10554929 Stephens et al. Feb 2020 B2
10558330 Suh et al. Feb 2020 B2
10562757 Biasi et al. Feb 2020 B2
10595669 Noth Mar 2020 B2
10602334 Kim Mar 2020 B2
10628789 Hewet et al. Apr 2020 B2
10664482 Nalliah May 2020 B2
10687654 Buchholz et al. Jun 2020 B2
10721625 Mars et al. Jul 2020 B2
10740583 Noth Aug 2020 B2
10755315 Cuppari et al. Aug 2020 B2
10759644 Lim et al. Sep 2020 B2
10762487 Apodaca Salinas et al. Sep 2020 B2
10769625 Pandiarajan et al. Sep 2020 B2
10789633 Zises et al. Sep 2020 B2
10796518 Dubey Oct 2020 B2
10810565 Davis Oct 2020 B2
10810689 Insolia et al. Oct 2020 B2
10820746 Noth Nov 2020 B2
10853832 Wittek Dec 2020 B2
10854033 Jafa et al. Dec 2020 B2
10861276 Arora et al. Dec 2020 B1
10874238 Nieraad et al. Dec 2020 B2
10891614 Patel Jan 2021 B2
10899595 Cuppari Jan 2021 B2
10902400 Abu Hamam Jan 2021 B2
10919752 Breault Feb 2021 B2
10932610 Nachawati Mar 2021 B2
10986167 Raboin Apr 2021 B2
10991184 Jee et al. Apr 2021 B2
11043060 Murphy Jun 2021 B1
11059713 Connor Jul 2021 B1
11084704 Sawhney et al. Aug 2021 B2
11087376 Cuppari et al. Aug 2021 B2
11087579 Yau Aug 2021 B2
20030071806 Annand Apr 2003 A1
20030200008 Wilson Oct 2003 A1
20040088224 Mukai May 2004 A1
20040167664 Griffin Aug 2004 A1
20050029287 Mobbs Feb 2005 A1
20050034606 In Albon Feb 2005 A1
20050087255 Humphrey et al. Apr 2005 A1
20050211768 Stillman Sep 2005 A1
20060027599 Edwards et al. Feb 2006 A1
20060118581 Clark Jun 2006 A1
20060190128 Brooke et al. Aug 2006 A1
20060190345 Crowley Aug 2006 A1
20070026916 Juds et al. Feb 2007 A1
20070036348 Orr Feb 2007 A1
20070145074 Sevcik Jun 2007 A1
20070212468 White et al. Sep 2007 A1
20070235533 Giordano Oct 2007 A1
20070239549 Lafuci et al. Oct 2007 A1
20070261566 Varney et al. Nov 2007 A1
20080066483 Klier et al. Mar 2008 A1
20080083780 Romanyszyn et al. Apr 2008 A1
20080126261 Lovett May 2008 A1
20080153567 Juds et al. Jun 2008 A1
20080189078 Vok et al. Aug 2008 A1
20080195251 Milner Aug 2008 A1
20080195252 Innocenti et al. Aug 2008 A1
20080235766 Wallos et al. Sep 2008 A1
20080257948 Jochim et al. Oct 2008 A1
20090040050 Humphrey Feb 2009 A1
20090152345 Johnson Jun 2009 A1
20090157515 Lafuci et al. Jun 2009 A1
20090177318 Sizemore Jul 2009 A1
20090222339 Anato et al. Sep 2009 A1
20100125362 Canora et al. May 2010 A1
20100187298 Phillips et al. Jul 2010 A1
20100198643 Friedman et al. Aug 2010 A1
20110123688 Deo et al. May 2011 A1
20110168775 Van Zetten Jul 2011 A1
20110172814 Breitenbach et al. Jul 2011 A1
20110184812 Stoulil Jul 2011 A1
20110278191 Lillard, Jr. Nov 2011 A1
20110298583 Libby et al. Dec 2011 A1
20120018452 Anliker et al. Jan 2012 A1
20120047007 Halsey et al. Feb 2012 A1
20120103926 Ibsies May 2012 A1
20120136479 Signorelli et al. May 2012 A1
20120139735 Dolliner et al. Jun 2012 A1
20120156337 Studor et al. Jun 2012 A1
20120166117 Warburton et al. Jun 2012 A1
20120245732 Yoakim Sep 2012 A1
20130043304 Agon et al. Feb 2013 A1
20130079926 Peters et al. Mar 2013 A1
20130085600 Nicol et al. Apr 2013 A1
20130087050 Studor et al. Apr 2013 A1
20130092567 Lok Apr 2013 A1
20130096715 Chung et al. Apr 2013 A1
20130140324 Deo et al. Jun 2013 A1
20130284029 Reed et al. Oct 2013 A1
20130311284 Quinn Nov 2013 A1
20130340453 Chan Dec 2013 A1
20130341395 Chan Dec 2013 A1
20140040055 Quartarone et al. Feb 2014 A1
20140053944 Wang Feb 2014 A1
20140053950 Vandersteen Feb 2014 A1
20140059133 Wang Feb 2014 A1
20140081777 Mastrodonato et al. Mar 2014 A1
20140110476 Sheehan et al. Apr 2014 A1
20140114469 Givens et al. Apr 2014 A1
20140134299 Guidorzi et al. May 2014 A1
20140142749 Peters et al. May 2014 A1
20140196811 Ramos, III et al. Jul 2014 A1
20140255883 Macquet Sep 2014 A1
20140263447 Peters, Jr. et al. Sep 2014 A1
20140290181 Edwards et al. Oct 2014 A1
20140297026 Peters, Jr. et al. Oct 2014 A1
20140309770 Signorelli et al. Oct 2014 A1
20140337159 Rothschild Nov 2014 A1
20140337795 Deo et al. Nov 2014 A1
20140361035 Rudick Dec 2014 A1
20140379123 Hirshbain Dec 2014 A1
20150039776 Jarnagin, III Feb 2015 A1
20150046877 Cuppari et al. Feb 2015 A1
20150053302 Willis et al. Feb 2015 A1
20150082243 Taylor et al. Mar 2015 A1
20150110931 Chase Apr 2015 A1
20150164264 Studor et al. Jun 2015 A1
20150187160 Anning Jul 2015 A1
20150191341 Martindale et al. Jul 2015 A1
20150217985 Raley Aug 2015 A1
20150225223 Morales Lema Aug 2015 A1
20150225224 Tilton et al. Aug 2015 A1
20150230653 Cheng Aug 2015 A1
20150251891 Peters et al. Sep 2015 A1
20150305548 Girault et al. Oct 2015 A1
20150317860 Hubner et al. Nov 2015 A1
20150325075 Jones Nov 2015 A1
20150353338 Nicol et al. Dec 2015 A1
20150375984 Arcand Dec 2015 A1
20160058245 Smith et al. Mar 2016 A1
20160090288 Givens, Jr. et al. Mar 2016 A1
20160092851 De Berg Hewett Mar 2016 A1
20160096715 Segiet et al. Apr 2016 A1
20160098883 Green et al. Apr 2016 A1
20160171811 Khamphilapanyo et al. Jun 2016 A1
20160189461 Kanon et al. Jun 2016 A1
20160209106 Anselmino et al. Jul 2016 A1
20160239904 Washington et al. Aug 2016 A1
20160245852 Warburton et al. Aug 2016 A1
20160264395 Hortin Sep 2016 A1
20160284153 Tansey, Jr. et al. Sep 2016 A1
20160314640 Ward et al. Oct 2016 A1
20160351001 Hirshbain Dec 2016 A1
20160363921 Martindale et al. Dec 2016 A1
20160368752 Bethuy et al. Dec 2016 A1
20160368753 Bethuy et al. Dec 2016 A1
20170008750 Hernandez et al. Jan 2017 A1
20170088410 Wing et al. Mar 2017 A1
20170099981 Haidar et al. Apr 2017 A1
20170121165 Gabrieli May 2017 A1
20170172340 Baarman et al. Jun 2017 A1
20170186110 Carpenter et al. Jun 2017 A1
20170224151 Rithener et al. Aug 2017 A1
20170275147 Moezedis Sep 2017 A1
20170293983 Long Oct 2017 A1
20170300936 Wilkinson et al. Oct 2017 A1
20170301173 Hindsgaul et al. Oct 2017 A1
20170330164 Suelberg Nov 2017 A1
20170345245 Torresani et al. Nov 2017 A1
20180029859 Hevia et al. Feb 2018 A1
20180044158 Jersey et al. Feb 2018 A1
20180086621 Dubief et al. Mar 2018 A1
20180099850 Lyons et al. Apr 2018 A1
20180137461 Wilkinson et al. May 2018 A1
20180186621 Jangbarwala et al. Jul 2018 A1
20180211235 Geigel et al. Jul 2018 A1
20180251361 Wing et al. Sep 2018 A1
20180265344 Keating et al. Sep 2018 A1
20180288594 Kim Oct 2018 A1
20180300702 Li et al. Oct 2018 A1
20180308079 Zong et al. Oct 2018 A1
20180327243 Rider et al. Nov 2018 A1
20180362321 Lim et al. Dec 2018 A1
20180365668 Hay Dec 2018 A1
20180365924 Yoakim et al. Dec 2018 A1
20190012498 Mahncke Jan 2019 A1
20190019210 Yamazaki et al. Jan 2019 A1
20190025108 Jones Jan 2019 A1
20190034901 Gaur et al. Jan 2019 A1
20190071298 Tomforde et al. Mar 2019 A1
20190073648 Salvucci et al. Mar 2019 A1
20190108709 Yamazaki et al. Apr 2019 A1
20190135607 Petermann May 2019 A1
20190172297 Schwarber et al. Jun 2019 A1
20190174933 Auda et al. Jun 2019 A1
20190180262 Huang et al. Jun 2019 A1
20190188667 Wolfson Jun 2019 A1
20190202680 Rider et al. Jul 2019 A1
20190205858 Tang et al. Jul 2019 A1
20190251522 Wallis Aug 2019 A1
20190287089 Mahncke Sep 2019 A1
20190295354 Chon et al. Sep 2019 A1
20190300357 Crawford et al. Oct 2019 A1
20190387768 Levi Dec 2019 A1
20190392666 Osborn Dec 2019 A1
20200031656 Rudick et al. Jan 2020 A1
20200034808 Kamat Jan 2020 A1
20200074440 Fullman et al. Mar 2020 A1
20200098218 Hartmann et al. Mar 2020 A1
20200122994 Cimatti et al. Apr 2020 A1
20200134960 Kingston et al. Apr 2020 A1
20200196793 Ninomiya et al. Jun 2020 A1
20200198958 Kline et al. Jun 2020 A1
20200226628 Snider et al. Jul 2020 A1
20200236175 Wang Jul 2020 A1
20200242584 Campbell et al. Jul 2020 A1
20200364817 Liu Nov 2020 A1
20200388099 Ji et al. Dec 2020 A1
20210039942 Springer Feb 2021 A1
20210081939 Kuenzi et al. Mar 2021 A1
20210087043 Szeteli et al. Mar 2021 A1
20210147209 Cuppari May 2021 A1
20210150539 Yau May 2021 A1
20210166215 Aleksandrov Jun 2021 A1
20210194760 Barton Jun 2021 A1
20210197226 Turner et al. Jul 2021 A1
20210264714 Karibandi et al. Aug 2021 A1
20210327203 Nishant Oct 2021 A1
Foreign Referenced Citations (196)
Number Date Country
102017130615 Jun 2019 DE
1281137 Sep 2003 EP
1245010 Aug 2004 EP
1466307 Oct 2004 EP
3242277 Aug 2008 EP
1697908 Mar 2009 EP
2504271 Nov 2010 EP
2085000 Dec 2011 EP
2396271 Dec 2011 EP
2702543 Mar 2014 EP
2504245 May 2014 EP
2839423 Feb 2015 EP
2506746 Apr 2015 EP
2252542 Sep 2015 EP
2969900 Jan 2016 EP
2997468 Mar 2016 EP
2764481 May 2016 EP
3028477 Jun 2016 EP
3033740 Jun 2016 EP
3053151 Aug 2016 EP
3055632 Aug 2016 EP
2504270 Nov 2016 EP
3092612 Nov 2016 EP
3049364 Dec 2016 EP
3116823 Jan 2017 EP
3122239 Feb 2017 EP
3127077 Feb 2017 EP
3185731 Jul 2017 EP
3198570 Aug 2017 EP
3238166 Nov 2017 EP
3252722 Dec 2017 EP
3252723 Dec 2017 EP
3252724 Dec 2017 EP
2969904 Jan 2018 EP
2976975 Jan 2018 EP
3078306 Jan 2018 EP
3281166 Feb 2018 EP
3284053 Feb 2018 EP
3287993 Feb 2018 EP
3291128 Mar 2018 EP
3300496 Apr 2018 EP
3324370 May 2018 EP
3357020 Aug 2018 EP
3357044 Aug 2018 EP
3360115 Aug 2018 EP
3364826 Aug 2018 EP
2782485 Oct 2018 EP
3394816 Oct 2018 EP
3405075 Nov 2018 EP
3407767 Dec 2018 EP
3418964 Dec 2018 EP
3421414 Jan 2019 EP
3433821 Jan 2019 EP
1405261 Feb 2019 EP
3442381 Feb 2019 EP
3445704 Feb 2019 EP
3275345 Mar 2019 EP
3452995 Mar 2019 EP
3493167 Jun 2019 EP
3497051 Jun 2019 EP
2999659 Jul 2019 EP
3526681 Aug 2019 EP
2504268 Sep 2019 EP
3090413 Nov 2019 EP
2563710 Dec 2019 EP
3614891 Mar 2020 EP
3637358 Apr 2020 EP
3278692 Aug 2020 EP
3182869 Oct 2020 EP
3723057 Oct 2020 EP
3321896 Nov 2020 EP
3762330 Jan 2021 EP
3774636 Feb 2021 EP
3782161 Feb 2021 EP
3785241 Mar 2021 EP
3792863 Mar 2021 EP
3811314 Apr 2021 EP
2912609 Jun 2021 EP
3857524 Aug 2021 EP
3870535 Sep 2021 EP
3898499 Oct 2021 EP
3962331 Mar 2022 EP
2768656 Jun 2020 ES
1252354 Sep 2020 ES
2881226 Nov 2021 ES
2429694 Mar 2007 GB
2726059 Jul 2020 RU
WO 9732284 Sep 1997 WO
WO 0052655 Sep 2000 WO
WO 0112033 Feb 2001 WO
WO 0112034 Feb 2001 WO
WO 0112038 Feb 2001 WO
WO 0117893 Mar 2001 WO
WO 0152621 Jul 2001 WO
WO 0224569 Mar 2002 WO
WO 03005295 Jan 2003 WO
WO 2004024615 Mar 2004 WO
WO 2004030435 Apr 2004 WO
WO 2004096694 Nov 2004 WO
WO 2004097690 Nov 2004 WO
WO 2005003022 Jan 2005 WO
WO 2005043469 May 2005 WO
WO 2005111955 Nov 2005 WO
WO 2006021039 Mar 2006 WO
WO 2006066338 Jun 2006 WO
WO 2006125279 Nov 2006 WO
WO 2007015905 Feb 2007 WO
WO 2009016610 Feb 2009 WO
WO 2009032686 Mar 2009 WO
WO 2009032929 Mar 2009 WO
WO 2009032938 Mar 2009 WO
WO 2009032941 Mar 2009 WO
WO 2009032946 Mar 2009 WO
WO 2009058095 May 2009 WO
WO 2009111286 Sep 2009 WO
WO 2009111289 Sep 2009 WO
WO 2009111291 Sep 2009 WO
WO 2009115774 Sep 2009 WO
WO 2010010587 Jan 2010 WO
WO 2010093747 Aug 2010 WO
WO 2011066438 Jun 2011 WO
WO 2011066444 Jun 2011 WO
WO 2011066448 Jun 2011 WO
WO 2011067156 Jun 2011 WO
WO 2011067232 Jun 2011 WO
WO 2011094625 Aug 2011 WO
WO 2012032543 Mar 2012 WO
WO 2012058449 May 2012 WO
WO 2012083194 Jun 2012 WO
WO 2012084573 Jun 2012 WO
WO 2012129686 Oct 2012 WO
WO 2012134296 Oct 2012 WO
WO 2012145649 Oct 2012 WO
WO 2012174609 Dec 2012 WO
WO 2013011078 Jan 2013 WO
WO 2013055938 Apr 2013 WO
WO 2013114321 Aug 2013 WO
WO 2013124188 Aug 2013 WO
WO 2013158407 Oct 2013 WO
WO 2013190253 Dec 2013 WO
WO 2014076296 May 2014 WO
WO 2014091284 Jun 2014 WO
WO 2014096017 Jun 2014 WO
WO2014062846 Jul 2014 WO
WO 2014188389 Nov 2014 WO
WO 2015017559 Feb 2015 WO
WO 2015026767 Feb 2015 WO
WO 2015044494 Apr 2015 WO
WO 2015053837 Apr 2015 WO
WO 2015013399 Jul 2015 WO
WO 2015148710 Oct 2015 WO
WO 2015153565 Oct 2015 WO
WO 2016011214 Jan 2016 WO
WO 2016048159 Mar 2016 WO
WO 2016053994 Apr 2016 WO
WO 2016073441 May 2016 WO
WO 2016154269 Sep 2016 WO
WO 2016162740 Oct 2016 WO
WO 2016168120 Oct 2016 WO
WO 2016191748 Dec 2016 WO
WO 2017015576 Jan 2017 WO
WO 2017062656 Apr 2017 WO
WO 2017085018 May 2017 WO
WO 2017112850 Jun 2017 WO
WO 2017160193 Sep 2017 WO
WO 2017192871 Nov 2017 WO
WO 2017205033 Nov 2017 WO
WO 2017211890 Dec 2017 WO
WO 2018035113 Feb 2018 WO
WO 2018071685 Apr 2018 WO
WO 2018125955 Jul 2018 WO
WO 2018226904 Dec 2018 WO
WO 2018231853 Dec 2018 WO
WO 2019067944 Apr 2019 WO
WO 2019121927 Jun 2019 WO
WO 2019246413 Dec 2019 WO
WO 2020089723 May 2020 WO
WO 2020115567 Jun 2020 WO
WO 2020132457 Jun 2020 WO
WO 2020136379 Jul 2020 WO
WO 2020243850 Dec 2020 WO
WO 2020252491 Dec 2020 WO
WO 2021015015 Jan 2021 WO
WO 2021019385 Feb 2021 WO
WO 2021025637 Feb 2021 WO
WO 2021167482 Aug 2021 WO
WO 2021195551 Sep 2021 WO
WO 2021198915 Oct 2021 WO
WO 2021200093 Oct 2021 WO
WO 2021205146 Oct 2021 WO
WO 2021216717 Oct 2021 WO
WO 2021221860 Nov 2021 WO
WO 2021236656 Nov 2021 WO
WO 2021247421 Dec 2021 WO
WO 2022030129 Feb 2022 WO
WO 2022031662 Feb 2022 WO
Related Publications (1)
Number Date Country
20220012975 A1 Jan 2022 US
Provisional Applications (1)
Number Date Country
63047047 Jul 2020 US