EP1096408A2 - Vending machine communication system - Google Patents

Vending machine communication system Download PDF

Info

Publication number
EP1096408A2
EP1096408A2 EP00309499A EP00309499A EP1096408A2 EP 1096408 A2 EP1096408 A2 EP 1096408A2 EP 00309499 A EP00309499 A EP 00309499A EP 00309499 A EP00309499 A EP 00309499A EP 1096408 A2 EP1096408 A2 EP 1096408A2
Authority
EP
European Patent Office
Prior art keywords
vending machine
operating software
additional
memory
port
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
EP00309499A
Other languages
German (de)
French (fr)
Other versions
EP1096408A3 (en
Inventor
Zhihong Z. Chang
Paul K. Griner
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Crane Co
Original Assignee
Crane Co
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Crane Co filed Critical Crane Co
Publication of EP1096408A2 publication Critical patent/EP1096408A2/en
Publication of EP1096408A3 publication Critical patent/EP1096408A3/en
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F5/00Coin-actuated mechanisms; Interlocks
    • G07F5/18Coin-actuated mechanisms; Interlocks specially adapted for controlling several coin-freed apparatus from one place
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F9/00Details other than those peculiar to special kinds or types of apparatus
    • G07F9/001Interfacing with vending machines using mobile or wearable devices
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F9/00Details other than those peculiar to special kinds or types of apparatus
    • G07F9/002Vending machines being part of a centrally controlled network of vending machines
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F9/00Details other than those peculiar to special kinds or types of apparatus
    • G07F9/02Devices for alarm or indication, e.g. when empty; Advertising arrangements in coin-freed apparatus
    • G07F9/026Devices for alarm or indication, e.g. when empty; Advertising arrangements in coin-freed apparatus for alarm, monitoring and auditing in vending machines or means for indication, e.g. when empty

Definitions

  • This invention relates generally to improvements in vending machine information transfer and communication systems and, particularly, to a highly versatile vending machine communication system and process in which it is possible to download and upload vending machine operating software and vending machine data using a handheld data transfer device.
  • vending machines have evolved from purely mechanical devices into complicated, electronically controlled machines. Modem vending machines often employ microprocessors or similar devices that control machine operations. The addition of electronic controllers has facilitated the ability to automatically record and store various types of sales data associated with a given machine. For example, vending machines can store information related to the sales patterns associated with particular vendable products. Such information allows, among other things, vending machine operators to optimize the products they stock in their machines, and to maximize the sales associated with a particular machine and/or with a particular location.
  • Electronic controllers also allow vending machine operators, including service technicians and stock personnel, to tailor various configuration parameters associated with their vending machines. For example, vending machine operators can set parameters related to price data, temperature settings, brewing times, product type, and product location within the machine. In some situations, vending machine operators must update the configuration data quite often. If, for example, the product type or price varies on a regular basis, vending machine service personnel may need to update the configuration data each time the machine is stocked.
  • EVA-DTS electronic data transfer standard
  • the EVA-DTS uses a portable handheld electronic terminal to exchange information with a vending machine.
  • the handheld unit can be preprogrammed using a standard PC and can be loaded with a complete set of configuration data that is subsequently transferred to a vending machine.
  • the handheld unit can read sales and other operational data from the vending machine. Such data may then be displayed directly on the handheld unit or stored for later use by a PC-based system and database.
  • a data transfer protocol is a recognized set and sequence of commands that provide for structured communcations between a vending machine control processor and another electronic terminal such as the handheld unit mentioned above.
  • United States vending machine operators and manufacturers typically prefer a data exchange protocol referred to in the industry as the DEX/UCS protocol.
  • the DEX/UCS protocol uses a 1 ⁇ 4 inch (0.64cm) jack/plug and an associated cable to establish a communication channel between the vending machine and the handheld unit.
  • the EVA-DTS uses a communications system based on the so-called Enhanced Optical Protocol (EOP), defined in the EVA-DTS, Version 4, January 4, 1997.
  • EOP is similar to the Digital Equipment Corporation Data Communications Mesage Protocol (DDCMP).
  • DDCMP Digital Equipment Corporation Data Communications Mesage Protocol
  • the EOP also referred to as the Enhanced DDCMP, basically follows the DDCMP except that the EOP supports higher data transfer rates and uses an IrDA® optical interface.
  • the Infrared Data Association developed the IrDA® optical interface which is commonly used in the palmtop and palm PC industry. It should be understood that although the EOP preferably uses a wireless optical interface, it may also be employed in a conventional jack-and-plug, physical cable configuration.
  • vending machine data transfer systems and devices do not offer vending machine operators with a user-friendly system that fulfills all of their information transfer requirements.
  • current data transfer systems and handheld storage devices cannot be used to download vending machine operating software for use by the vending machine controller.
  • current systems upload vending machine operating software from the vending machine to a handheld storage device.
  • present systems do not facilitate convenient vending machine to vending machine software and data transfers.
  • Existing data transfer devices and systems cannot be easily used to upload operating software or configuration data from one vending machine and thereafter download the uploaded software or data into another vending machine.
  • the invention meets the above needs and overcomes the deficiencies of the prior art by providing an improved system for transferring vending machine operating software and vending machine data. This is accomplished by providing a handheld data transfer device that is adapted to communicate and exchange information with a vending machine controller over wired and wireless communication interfaces.
  • the system also provides software for selecting the vending machine operating software or vending machine data to be transferred, as well as software for controlling various software/data transfer processes.
  • the present invention provides the ability to download and upload vending machine operating software and vending machine data electronically, without opening the vending machine and without replacing EPROMs or similar hardware. Such a system allows for rapid reprogramming of vending machine software during manufacture, test, or in operation.
  • the system further provides for the transfer of manufacturer-specific vending machine data that may be tailored to meet the unique requirements of a particular class of vending machine.
  • this manufacturer-specific data is transferred and stored in binary form, the form most readily used by computers and vending machine controllers. Additionally, the system is economically feasible, commercially practical, and compatible with existing vending machine data transfer protocols.
  • a system embodying aspects of the invention includes a vending machine vending a product.
  • An operating software memory is associated with the vending machine.
  • the operating software memory stores a vending machine operating software.
  • a vending machine controller controls the vending machine as a function of the vending machine operating software stored in the operating software memory.
  • a vending machine I/O port is associated with the vending machine controller.
  • a handheld data transfer device has a data transfer I/O port for communicating with the vending machine I/O port.
  • the handheld data transfer device also has a storage.
  • the transfer device and the vending machine controller are adapted to transfer the vending machine operating program between the storage of the handheld data transfer device and the operating software memory via the data transfer I/O port, the vending machine I/O port, and the vending machine controller. As such, the vending machine operating software is transferred between the operating software memory and the storage of the handheld data transfer device.
  • Another system embodying aspects of the invention includes a vending machine vending a product.
  • An operating software memory is associated with the vending machine.
  • the operating software memory stores a vending machine operating software.
  • a configuration data memory is associated with the vending machine.
  • the configuration data memory stores vending machine configuration data.
  • a data memory is associated with the vending machine.
  • the data memory stores vending machine operational data.
  • a vending machine controller controls the vending machine as a function of the vending machine operating software stored in the operating software memory and of the vending machine configuration data stored in the configuration data memory.
  • the vending machine controller stores the vending machine operational data corresponding to operation of the vending machine in the data memory.
  • a vending machine I/O port is associated with the vending machine controller.
  • a handheld data transfer device has a data transfer I/O port for communicating with the vending machine I/O port.
  • the handheld data transfer device also has a storage.
  • the transfer device initiates a transfer of the vending machine operating software between the storage of the handheld data transfer device and the operating software memory via the data transfer I/O port, the vending machine I/O port, and the vending machine controller. As such, the vending machine operating software is transferred between the operating software memory and the storage of the handheld data transfer device.
  • the invention also includes a process for transferring vending machine operating software stored in a vending machine operating software memory associated with a vending machine.
  • the process includes positioning a handheld data transfer device adjacent a vending machine I/O port associated with the vending machine; establishing a communication channel between a data transfer I/O port of the handheld data transfer device and the vending machine I/O port; and transferring the vending machine operating software from the vending machine operating software memory associated with the vending machine to a storage associated with the handheld data transfer device. The transfer occurs via the communication channel. As such, the vending machine operating software is transferred form the vending machine operating software memory to the storage.
  • the invention in another form, includes a process for transferring vending machine configuration data stored in a configuration memory associated with a vending machine.
  • the process includes positioning a handheld data transfer device adjacent a vending machine I/O port associated with the vending machine; establishing a communication channel between a data transfer I/O port of the handheld data transfer device and the vending machine I/O port; and transferring the vending machine configuration data from the configuration data memory associated with the vending machine to a storage associated with the handheld data transfer device. The transfer occurs via the communication channel.
  • the process further includes positioning the handheld data transfer device adjacent an additional vending machine I/O port associated with an additional vending machine; establishing an additional communication channel between the data transfer I/O port and the additional vending machine I/O port; and transferring the vending machine configuration data stored in the storage to an additional configuration data memory associated with the additional vending machine.
  • the transfer occurs via the additional communication channel.
  • the vending machine configuration data stored in the configuration data memory associated with the vending machine is transferred to the additional configuration data memory associated with the additional vending machine.
  • the invention further includes a process for transferring vending machine operating software from a handheld data transfer device having a storage to a vending machine operating software memory associated with a vending machine.
  • the process includes loading the vending machine operating software into the storage; positioning a data transfer I/O port associated with the handheld data transfer device adjacent a vending machine I/O port associated with the vending machine; establishing a communication channel between the data transfer I/O port and the vending machine I/O port; and transferring the vending machine operating software from the storage to the vending machine operating software memory associated with the vending machine. The transfer occurs via the communication channel.
  • the invention may comprise various other systems and/or processes.
  • Fig. 1 is block diagram of one preferred embodiment of a vending machine communication system of the invention.
  • Fig. 2 is a block diagram of a database structure suitable for use with the vending machine communication system of Fig. 1.
  • Fig. 3 is a block diagram illustrative of a data transfer aspect of the vending machine communication system of Fig. 1.
  • Figs. 4A-4H are exemplary computer displays for a menu-driven palmtop computer suitable for use with the vending machine communication system of Fig. 1.
  • a vending machine controller 10 generally controls the operations of a vending machine 12 such that a product dispenser 14 connected to the VMC 10 dispenses a vendable product (e.g., food, beverages, toiletries, etc.), typically by means of an electro-mechanical device.
  • VMC 10 controls the vending machine 12 as a function of three types of vending machine-related information: vending machine operating software stored in an operating software memory 18; configuration data stored in configuration data memory 20; and operational data stored in operational data memory 24.
  • the vending machine operating software comprises a combination or series of computer instructions and definitions for use by VMC 10 to perform computational or control functions in response to various system inputs and events, including inputs from customers, sensors, operators, and the like.
  • the configuration data memory 20 stores the configuration data associated with vending machine 12.
  • VMC 10 also controls some of the operations of vending machine 12 as a function of the configuration data.
  • the configuration data includes, for example, information regarding the prices of the vendable products, information regarding product configuration and location within vending machine 12, time-of-day information, and such other information as may be required to tailor the operation of vending machine 12 to its location and to the specific vendable products contained therein.
  • the configuration data may also be referred to as pricing or point-of-sale data.
  • the operational data memory 24 stores operational data associated with vending machine operations.
  • Such operational data includes, for example, sales information related to the vendable products that have been sold by vending machine 12.
  • the operational data may also include information such as machine and subassembly serial numbers, machine location codes, software version numbers, system date and time codes, the date and time of recent data transfers, and the name or I.D. of the route persons/service technicians who have accessed the machine.
  • the operational data may further include information that is particularly relevant to the maintenance of vending machine 12 such as self-diagnostic data or indications of power outages.
  • VMC 10 stores the operational data in operational data memory 24 in response to a vending machine event 28.
  • a sale of a vendable product would cause VMC 10 to store and/or update the values of various types of operational data in operational data memory 24.
  • the value of the vendable product would be added to the sales total for that product selection; the total number of vends for that product selection would be incremented; and the time and date of the last vend would be recorded.
  • Operational data may also be referred to as sales data, meter data, or audit data.
  • operating software memory 18 preferably comprises a flash memory.
  • flash memories generally have non-volatile characteristics similar to EPROMs, yet may be rapidly reprogrammed without removing or replacing any memory chips. Further, flash memories are relatively inexpensive devices. It is expected that replacing EPROMs with flash memories will result in a negligible increase in parts costs while simultaneously expanding the size of software memory 18 and eliminating an EPROM subassembly. Additionally, it is preferable that the controller clock (not shown in Fig. 1) operate at a sufficiently fast speed to accommodate faster software and data transfer rates.
  • vending machine operating software may be downloaded into operating software memory 18, and likewise uploaded from memory 18, without opening the vending machine or removing any hardware from the vending machine.
  • configuration data memory 20 and operational data memory 24 need not necessarily comprise flash memories. Preferably, however, configuration data memory 20 and operational data memory 24 are such that the data stored therein (e.g., configuration and operational data) is not lost if a power disruption occurs. Note also that configuration data memory 20 and operational data memory 24 may comprise a single memory or separate memories.
  • a customer display window 40 is located on an outer housing 42 of vending machine 12.
  • the customer display window 40 is usually positioned at a position that is easily viewable by a typical vending machine customer, such as in the front door of the vending machine 12.
  • a customer display 44 is positioned behind customer display window 40 such that the customer display 44 is viewable by a customer through customer display window 40.
  • VMC 10 controls one or more messages that are to be displayed on customer display 44.
  • the messages may be stored as configuration data in configuration data memory 20, or as part of the operating software in operating software memory 18.
  • Messages displayed on customer display 44 typically include, for instance, greetings, advertising, indications that the machine currently requires exact change, or out of stock information.
  • customer display 44 preferably comprises a vacuum fluorescent display (VFD) such as that available from Noritake Co., Ltd. (part no. AH1016A).
  • An infrared interface port 46 also referred to as an IR port, an I/O port, or an optical interface port, is disposed behind customer display window 40, adjacent to customer display 44.
  • vending machine operators such as service technicians, may communicate and transfer software and data with VMC 10 via the IR port 46.
  • customer display 44 may emit noise signals such as electromagnetic or optical noise signals.
  • An isolator 48 positioned between customer display 44 and IR port 46 reduces the effect that such interference signals may have on IR port 46.
  • the isolator 48, customer display 44, and IR port 46 are mounted on a single printed circuit board.
  • IR port 46 comprises an IrDA® compatible, surface mounted IR transceiver, such as that available from Hewlett-Packard Company (part no. HSDL-3610). VMC 10 communicates with IR port 46 via an encoder/decoder integrated circuit 50, such as HSDL-7001, also available from Hewlett-Packard Company. It should be understood that although IR port 46 is described by reference to an IR transceiver only, IR port 46 could also be described by reference to the combination of the IR transceiver and the encoder/decoder 50, or by reference to other circuit combinations, such as a single integrated circuit comprising a transceiver and an encoder/decoder.
  • the vending machine 12 further comprises a cable input/output port 52 for transferring and exchanging software and data using a physical cable interface in lieu of, or in addition to, IR port 46.
  • Cable input/output port 52 may also be referred to as an I/O port.
  • the cable input port 52 requires the use of a physical cable connection 54 (shown in phantom), using a standard 1 ⁇ 4 inch (0.64cm) jack-and-plug arrangement-wireless communications are not typically used when VMC 10 communicates using cable input/output port 52.
  • the vending machine communication system further includes a handheld data transfer device 60, also referred to as a portable data carrier device (PDCD).
  • PDCD 60 is generally referred to as a data carrier device, it has been found, according to the invention, that PDCD 60 may also be used to store and transfer vending machine operating software.
  • PDCD 60 preferably comprises a palmtop computer with an integrated IrDA® compatible data transfer port 62.
  • palmtop computers are readily available with such integrated data transfer ports 62.
  • PDCD 60 further includes a display and a user input capability via a keyboard and/or a touch/tap screen, and runs WINDOWS CE® or a similar operating system.
  • the PDCD 60 further comprises a control processor 64 and a memory 65, also referred to as a storage.
  • the control processor 64 communicates across a wireless communication channel 70 via IrDA® compatible data transfer port 62.
  • PDCD 60 can transfer and exchange software and data with other IrDA® compatible devices via data transfer port 62.
  • IrDA® data transfer port 62 PDCD 60 may also include one or more cable I/O ports 71 so that PDCD 60 may communicate with other devices, such as, for example, a base station 74 via a physical cable connection 76.
  • the base station 74 preferably comprises a desktop or laptop PC running a widely available operating system, such as WINDOWS 98®. Although it is possible for base station 74 to communicate and exchange data with PDCD 60 using a wireless interface such as an IrDA® port, in the embodiment shown in Fig. 1, base station 74 communicates with PDCD 60 via a standard cable interface 76, such as, for example, an RS-232 interface.
  • a standard cable interface 76 such as, for example, an RS-232 interface.
  • Fig. 2 is a block diagram generally illustrating one possible database structure for use with the vending machine communication system shown in Fig. 1.
  • base station 74 preferably includes one or more databases or libraries 80 for storing software, data, and other information relevant to vending machine 12 or PDCD 60.
  • an operating software library 82 stores the vending machine operating software for use with one or more class of vending machine 12.
  • a configuration data library 84 stores the configuration data for one or more class of vending machine 12.
  • a sales data library 86 stores sales or other operational data for one or more class of vending machine 12.
  • each database/library 82, 84, 86 is illustrated separately in Fig. 2, the libraries 80 may be organized and store software and data in many different ways.
  • the data and software may be stored by specific reference to a class/type of vending machine 12. Conversely, the data and software may be stored by reference to vending machine locations.
  • Fig. 2 illustrates the libraries 80 as existing in databases stored on base station 74, libraries 80 may be simultaneously and/or separately maintained on other devices such as, for example, PDCD 60, a main frame, or the like.
  • vending machine operating software or configuration data may be transferred between PDCD 60 and vending machine 12 without opening vending machine 12 and without replacing any hardware such as EPROMs.
  • vending machine operating software as an example, a vending machine service technician or similar person selects and, if desired, amends/edits an appropriate version of the vending machine operating software stored on base station 74.
  • Cable port 71 on PDCD 60 is connected to a corresponding port associated with base station 74 and the service technician initiates a software transfer.
  • the vending machine operating software is thereafter transferred to PDCD 60 which stores the software in the memory/storage 65.
  • PDCD 60 After the selected vending machine operating software is loaded on PDCD 60, PDCD 60 is placed near vending machine window 44 so that the IrDA® port 62 associated with PDCD 60 may communicate with the IR port 46 mounted behind vending machine window 44.
  • the technician Using a keyboard, mouse, or touch/tap screen associated with PDCD 60, the technician initiates a software transfer between PDCD 60 and vending machine 12 by selecting a desired transfer option on the user display associated with PDCD 60 (see Figs. 4A-4H and related discussion below).
  • the transfer initiation command is transmitted by IrDA® port 62 and received at IR port 46.
  • the transfer initiation command identifies the type of information to be transferred, in this case the vending machine operating software.
  • VMC 10 receives the transfer initiation command and, when ready, responds with an appropriate acknowledgment message indicating that it has received the command and is ready to receive the information, including the vending machine operating software.
  • PDCD 60 Upon the transfer of the last software item, PDCD 60 typically transmits a transfer complete message, and VMC 10 typically provides an appropriate response acknowledging that the transfer is complete.
  • the transfer occurs in discrete blocks with appropriate handshaking between PDCD 60 and VMC 10 occurring between each block transfer.
  • appropriate handshaking between PDCD 60 and VMC 10 occurring between each block transfer.
  • standard information transfer integrity checks may also be employed such as, for example, checksums, parity checks, or the like.
  • the vending machine communication system of the present system also provides for uploading the vending machine operating software from vending machine 12.
  • the present invention allows users to transfer the operating software from vending machine 12 to PDCD 60 for subsequent transfer to another vending machine (see reference character 12' in Fig. 3 and associated discussion below) or to base station 74.
  • PDCD 60 is placed near vending machine window 40.
  • An upload is initiated on PDCD 60 which transmits an appropriate upload initiation message to vending machine 12 via IrDA® data port 62, wireless communication channel 70, IR port 46, encoder/decoder 50, and VMC 10.
  • VMC 10 Upon receipt of the upload initiation message, VMC 10 responds with an appropriate acknowledgment or ready indication. When ready, VMC 10 retrieves the vending machine operating software from operating software memory 18 and outputs the operating software to IR port 46 via encoder/decoder 50.
  • PDCD 60 receives the operating software at IrDA® port 62 via wireless communication channel 70.
  • the control processor 64 associated with PDCD 60 thereafter stores the operating software in memory storage 65. After the vending machine operating software has been uploaded from vending machine 12 to PDCD 60, it may be thereafter transferred to base station 74 or to another vending machine 12' (Fig. 3). Further, as explained above, the vending machine operating software is preferably transferred in discrete blocks.
  • Fig. 3 illustrates the process by which the vending machine communication system of the present invention may be used to transfer vending machine operating software (or other information such as, for example, configuration data ) from one vending machine 12 to another or an additional vending machine 12' of the same type or class as vending machine 12 shown in Fig. 1.
  • vending machine operating software or other information such as, for example, configuration data
  • the vending machine operating software residing in operating software memory 18 on vending machine 12 is transferred (as indicated by arrow UT) to PDCD 60 in a manner similar to that described above with respect to uploading the vending machine operating software.
  • vending machine 12 and vending machine 12' both have the same operating software stored in their respective operating software memories 18, 18'.
  • operating software memories 18, 18' preferably comprise flash memories that facilitate rapid reprogramming and reloading of the vending machine operating program.
  • vending machine 12' is substantially identical to vending machine 12 with respect to the relevant aspects of the present invention.
  • vending machine 12' includes a display window 40' and a customer display 44'.
  • vending machine 12' includes comparable memories and I/O interfaces, and communicates via an additional communication channel 70' (as indicated by arrow DT).
  • the process for transferring vending machine operating software from PDCD 60 to operating software memory 18, as shown in Fig. 1, may also be described in terms of the following steps: loading the vending machine operating software into storage 65, either manually or from base station 74 over interface cable 76; positioning PDCD 60 near vending machine 12 such that IrDA® port 62 is adjacent IR port 46; establishing a communication channel between IrDA® port 62 and IR port 46 via wireless communication channel 70; and transferring the vending machine operating software from storage 65 to operating software memory 18, via IrDA® port 62, wireless communication channel 70, IR port 46, encoder/decoder 50, and VMC 10.
  • the process for uploading/transferring vending machine operating software from vending machine 12 to PDCD 60 may also be described in terms of the following steps: positioning PDCD 60 near window 40 on vending machine 12 such that PDCD 60 is adjacent IR port 46; establishing a communication channel between IrDA® port 62 and IR port 46 via wireless communication channel 70 (see also reference character UT in Fig. 3); and transferring the vending machine operating software from the vending machine operating software memory 18 to storage 65 associated with PDCD 60 via VMC 10, encoder decoder 50, IR port 46, wireless communication channel 70, and IrDA® port 62.
  • vending machine operating software When the vending machine operating software is stored in storage 65, it may thereafter be downloaded/transferred into the additional vending machine 12', as shown in Fig. 3.
  • the process for transferring the vending machine operating software from PDCD 60 to the additional vending machine 12', as shown in Figs. 1 and 3, may be also be described in terms of the following steps: positioning PDCD 60 near additional window 40' on additional vending machine 12' such that PDCD 60 is adjacent the additional IR port 46'; establishing an additional communication channel between IrDA® port 62 and the additional IR port 46' via an additional wireless communication channel 70' (see also reference character DT in Fig.
  • vending machine operating software stored in storage 65 to the additional vending machine operating software memory 18' associated with the additional vending machine 12' via IrDA® port 62, the additional wireless communication channel 70', the additional IR port 46', the additional encoder/decoder 50', and the additional VMC 10'.
  • vending machine configuration data from vending machine 12 to the additional vending machine 12' may also be described in terms of the following steps: positioning PDCD 60 near window 40 on vending machine 12 such that PDCD 60 is adjacent IR port 46; establishing a communication channel between IrDA® port 62 and IR port 46 via wireless communication channel 70 (see also reference character UT in Fig. 3); and transferring the vending machine configuration data from the configuration data memory 20 to storage 65 associated with PDCD 60 via VMC 10, encoder decoder 50, IR port 46, wireless communication channel 70, and IrDA® port 62.
  • the process for thereafter downloading the data into the additional vending machine 12' may be described in terms of the following steps: positioning PDCD 60 near additional window 40' on vending machine 12' such that PDCD 60 is adjacent additional IR port 46'; establishing an additional communication channel between IrDA® port 62 and additional IR port 46' via an additional wireless communication channel 70' (see also reference character DT in Fig. 3); and transferring vending machine configuration data stored in storage 65 to additional configuration data memory 20' associated with additional vending machine 12'.
  • the vending machine configuration data stored in configuration data memory 20 also resides (e.g., is transferred) in additional configuration data memory 20' associated with additional vending machine 12'.
  • vending machine manufacturers may load software into multiple vending machines in much less time that it would take to program and replace EPROMs.
  • vending machine software developers can download and upload vending machine software with much shorter turn-around times. If, for instance, software problems are suspected with a particular machine or machine class, the suspect operating software may be uploaded from vending machine 10 into PDCD 60 for subsequent analysis and debugging.
  • Base station 74 or PDCD 60 may be optionally equipped with suitable software analysis and debugging tools.
  • Vending machine manufacturers may provide software updates to vending machine operators, without sending any EPROMs or other hardware. Operators may, in turn, load the new software in their machines using PDCD 60 whenever it is convenient, such as when a machine is scheduled to be re-stocked. Advantageously, there is no need to use specially trained technicians.
  • vending machine configuration data and/or the vending machine operational data may be transferred to or from vending machine 12, or between vending machines 12, 12', in the same way that the vending machine operating software may be transferred to or from vending machine 12, or between vending machines 12, 12'.
  • control processor 64 of PDCD 60 may optionally execute software that allows persons operating PDCD 60 to view and edit the vending machine operating software, configuration data, and/or the vending machine operational data on a display (not shown) of PDCD 60. Similar software could also run on base station 74. It should be noted, however, that due to the nature of the type of information stored as operational data, it is unlikely that such data would be edited. Thus, the operational data can be stored in a read-only format. In fact, in one preferred embodiment of the present invention, operational data is not transferred (e.g., uploaded or downloaded) using PDCD 60. In such an embodiment, prior art devices using the DEX/UCS protocol may be used to retrieve vending machine sales or operational data.
  • the configuration data also comprises one or more manufacturer-specific lists that are independent of the lists specified in the EVA-DTS, Version 4, January 4, 1997. Tables I & II are illustrative of typical manufacturer-specific lists.
  • Exemplary Configuration List from a Snack Vending Machine Data Type Data Class Identifier 1580 prices A0-A9 00230023001E001E0028002800230023003D0023 prices B0-B9 0064002300690023001E001E0028002800230045 ... ...
  • prices H1-H5 0023000A000E000130018 Coin/Bill/Card Config. 2A0400010345008912 Messages 120A230E240A2418130C0E240DA202424242424242424 201E0E0A1D0E241F1D0E240E210A0C18240C120A12130E ... ...
  • VMC 10 may be programmed using vending machine software that causes VMC 10 to automatically reject lists containing mismatched class identifiers.
  • PDCD may also be used to transfer the configuration data from one vending machine to another vending machine in a similar fashion to that described above with respect to vending machine operating software.
  • PDCD 60 need not be specifically programmed or have any special knowledge with respect to the data other than to know that it is manufacturer-specific list data.
  • One way to identify such configuration data is to use a unique list number that identifies the data as manufacturer-specific data. In other words, PDCD 60 may initiate data transfers simply by reference to a particular manufacturer-specific list number or other convenient identifier.
  • a List 66 may also be created that includes only message data (e.g., the messages displayed on customer display 44).
  • message data e.g., the messages displayed on customer display 44.
  • Such sublists provide flexibility and allow updating and transferring common data between different classes of machines that use a common data structure for like data.
  • the vending machine communication system of the present invention advantageously provides for manufacturer-specific data transfers between similar and dissimilar vending machines even though PDCD 60 requires only very limited information regarding the particular data involved (e.g., only a list number).
  • PDCD 60 may also be programmed to allow a user to view and edit the information contained in any manufacturer-specific list.
  • a sublist code may be embedded within the a primary list identifier.
  • List 66 may be embedded and identified as sublist data within List 65.
  • PDCD 60 only needs to interpret the primary list identifier to determine that the list comprises a manufacturer-specific list-PDCD 60 would not need to be programmed to recognize specific sublists or sublist identifiers.
  • vending machine operating software may also be stored and transferred in a list format. In that way, PDCD 60 need only know the specific list number or identifier when uploading or downloading vending machine operating software.
  • the configuration data and the operational data are transferred and stored in binary form.
  • Prior art systems such as that described in the EVA-DTS specification mentioned above, transfer and store data in ASCII form.
  • Computers and processors such as VMC 10, PDCD 60, and base station 74, on the other hand, cannot readily use ASCII data-the data must normally be converted from ASCII for processing.
  • data remains in binary form.
  • transferring data in ASCII form tends to expand the size of the data formats used and requires the addition of identifiers and delimiters. Consequently, ASCII data transfers require more time and memory than comparable binary data transfers.
  • a vending machine communication system that transfers and stores data in binary form provides distinct advantages in terms of data transfer rates, data storage requirements, and data message size requirements.
  • the vending machine operating software is preferably transferred and stored in binary form.
  • Figs. 4A through 4H illustrate several possible graphical user interface screens for a menu-driven software application associated with PDCD 60.
  • Figs. 4A through 4H illustrate user selection screens that are compatible with a palmtop computer running the WINDOWS CE® operating system.
  • Fig. 4A illustrates a menu selection whereby a person using PDCD 60 may select between an infrared connection using wireless communication channel 70, or a direct connection using physical cable connection 54.
  • Fig. 4B depicts a typical vending machine selection window wherein the selection options are organized by vending machine class. It should be noted that the selection window may also be customized to allow users to select the type of information/data to be transferred (e.g., vending machine operating code, vending machine configuration data, or vending machine operational data).
  • type of information/data e.g., vending machine operating code, vending machine configuration data, or vending machine operational data.
  • Figs. 4A and 4B both show separate "Download” and "Upload” selection buttons. By selecting one of these buttons, a user can initiate a data download or upload.
  • the meaning of the words download and upload may vary among those skilled in the art, depending upon the context in which those words are used. For example, one person might refer to all transfers from PDCD 60 to vending machine 10 as downloads, and similarly refer to all transfers from vending machine 10 to PDCD 60 as uploads. This is the convention generally adhered to herein. Conversely, another person may prefer to refer to such transfers in opposite terms, e.g., referring to all transfers from PDCD 60 to vending machine 10 as uploads. Either convention is acceptable, so long as the terms are used consistently.
  • Figs. 4C and 4D illustrate typical displays indicative of the status of a selected data transfer.
  • Figs. 4E and 4F depict typical file management displays for use with PDCD 60.
  • a file pull down menu allows users to manipulate various file attributes such as file names. Users may also initiate data transfers (e.g., uploads or downloads) from the file menu.
  • Fig. 4G shows a representative list of options available if a user selects the "Start” option associated with a palmtop computer running the WINDOWS CE® operating system.
  • the palmtop application software associated with the vending machine communication system of the present invention is referred to as "nvzap" in the illustrated list of "Start” options.
  • Application software such as nvzap may be created using an object-oriented authoring tool such as Visual C++®, available from Microsoft.
  • Fig. 4H is a typical security feature that may be used with PDCD 60.
  • access to specific data, and to the ability to transfer data may be limited by the use of passwords or similar such devices.
  • base station 74 may also provide additional data manipulation and programming capabilities that are not easily implemented on a handheld unit such as PDCD 60.
  • a computer program executing on base station 74 provides a menu-drive, graphical user interface whereby a user has access to vending machine operating software, operational data, or configuration data in a form that is readable and understandable by the user.
  • Such a program could also allow certain users to edit or otherwise alter the accessed vending machine operating software, operational data, or configuration data.
  • security and integrity checks may control or limit any or all of the above-described data transfer operations.
  • password protections can be used to limit access to data, portions of data, the system, or portions of the system. Access to specific data may be denied altogether or limited in some other way such as "read only" access.
  • password protections may be used to limit a person's ability to initiate data transfers between base station 74 and PDCD 60, and between PDCD 60 and vending machine 12.
  • Other possible integrity checks include embedded codes contained within the data/information exchanged.
  • vending machine 12 can provide a code indicative of a vending machine's class/type to ensure that only software or configuration data associated with that type of machine is downloaded into the operating software memory of that machine.
  • transfer is used broadly herein.
  • software and data transfers are intended to include copying wherein after a transfer occurs, a copy of the original information remains on the source device (e.g., PDCD 60) and a copy of the original information is also stored on the target device (e.g., operating software memory 18).
  • software and data may be literally transferred such that after a transfer, the software and/or data resides on the target device but not on the source device.
  • a transfer can also involve overwriting existing information. If, for instance, a copy of the vending machine operating software already existed in the memory storage 65 associated with PDCD 60, and if an overwrite occurs, the new software that is downloaded to PDCD 60 overwrites the existing software on PDCD 60.
  • the vending machine communication system of the present invention supports partial transfers, partial copies, and partial overwrites of software and data.

Abstract

A vending machine communication system and process including a vending machine (12) that vends a product. A vending machine operating software is stored in an operating software memory (18) associated with the vending machine (12). A vending machine controller (10) controls the vending machine (12) as a function of the vending machine operating software. A vending machine I/O port (46, 52) is associated with the vending machine controller (10). A handheld data transfer device (60) has a data transfer I/O port (62, 71) for communicating with the vending machine I/O port (46, 52). The handheld data transfer device (60) has a storage. The transfer device (60) and the vending machine controller (10) are adapted to transfer the vending machine operating software between the storage and the operating software memory (18) via the data transfer I/O port (62, 71), the vending machine I/O port (46, 52), and the vending machine controller (10). As a result, the vending machine operating software is transferred between the operating software memory (18) and the storage. The system also includes the ability to transfer vending machine operating software and vending machine data from one vending machine (12) to another (12'), using the handheld data transfer device (60).

Description

    BACKGROUND OF THE INVENTION
  • This invention relates generally to improvements in vending machine information transfer and communication systems and, particularly, to a highly versatile vending machine communication system and process in which it is possible to download and upload vending machine operating software and vending machine data using a handheld data transfer device.
  • Over the years, vending machines have evolved from purely mechanical devices into complicated, electronically controlled machines. Modem vending machines often employ microprocessors or similar devices that control machine operations. The addition of electronic controllers has facilitated the ability to automatically record and store various types of sales data associated with a given machine. For example, vending machines can store information related to the sales patterns associated with particular vendable products. Such information allows, among other things, vending machine operators to optimize the products they stock in their machines, and to maximize the sales associated with a particular machine and/or with a particular location.
  • Electronic controllers also allow vending machine operators, including service technicians and stock personnel, to tailor various configuration parameters associated with their vending machines. For example, vending machine operators can set parameters related to price data, temperature settings, brewing times, product type, and product location within the machine. In some situations, vending machine operators must update the configuration data quite often. If, for example, the product type or price varies on a regular basis, vending machine service personnel may need to update the configuration data each time the machine is stocked.
  • With the addition of relatively sophisticated vending machine electronics and multiple data transfer devices, at least one trade-association has developed a common standard for exchanging data (but not operating software) between vending machines and other electronic devices. The European Vending Association (EVA) has developed an electronic data transfer standard (EVA-DTS) that allows vending machine operators to use common equipment for uploading and downloading sales and/or configuration data-regardless of which manufacturer made the vending machine. In other words, if a vending machine is EVA-DTS compatible, the vending machine operator is assured that he or she can transfer certain EVA-DTS common information with the machine via a standard interface-without the need to purchase different upload and download devices for machines made by different manufacturers.
  • As currently envisioned, the EVA-DTS uses a portable handheld electronic terminal to exchange information with a vending machine. The handheld unit can be preprogrammed using a standard PC and can be loaded with a complete set of configuration data that is subsequently transferred to a vending machine. Similarly, the handheld unit can read sales and other operational data from the vending machine. Such data may then be displayed directly on the handheld unit or stored for later use by a PC-based system and database.
  • In order to use a data transfer device such as the handheld unit envisioned for use with the EVA-DTS it is necessary to specify a data transfer protocol. A data transfer protocol is a recognized set and sequence of commands that provide for structured communcations between a vending machine control processor and another electronic terminal such as the handheld unit mentioned above. United States vending machine operators and manufacturers typically prefer a data exchange protocol referred to in the industry as the DEX/UCS protocol. The DEX/UCS protocol uses a ¼ inch (0.64cm) jack/plug and an associated cable to establish a communication channel between the vending machine and the handheld unit.
  • The EVA-DTS, on the other hand, uses a communications system based on the so-called Enhanced Optical Protocol (EOP), defined in the EVA-DTS, Version 4, January 4, 1997. The EOP is similar to the Digital Equipment Corporation Data Communications Mesage Protocol (DDCMP). For additional details regarding the DDCMP, see DDCMP Specification No. AA-DS99A-TC. The EOP, also referred to as the Enhanced DDCMP, basically follows the DDCMP except that the EOP supports higher data transfer rates and uses an IrDA® optical interface. The Infrared Data Association developed the IrDA® optical interface which is commonly used in the palmtop and palm PC industry. It should be understood that although the EOP preferably uses a wireless optical interface, it may also be employed in a conventional jack-and-plug, physical cable configuration.
  • Despite the development of the EOP and other vending machine data transfer improvements, existing vending machine data transfer systems and devices do not offer vending machine operators with a user-friendly system that fulfills all of their information transfer requirements. For example, current data transfer systems and handheld storage devices cannot be used to download vending machine operating software for use by the vending machine controller. Nor can current systems upload vending machine operating software from the vending machine to a handheld storage device. Moreover, present systems do not facilitate convenient vending machine to vending machine software and data transfers. Existing data transfer devices and systems cannot be easily used to upload operating software or configuration data from one vending machine and thereafter download the uploaded software or data into another vending machine.
  • For these reasons, an improved system for transferring vending machine operating software and vending machine data to and from vending machines is desired.
  • SUMMARY OF THE INVENTION
  • The invention meets the above needs and overcomes the deficiencies of the prior art by providing an improved system for transferring vending machine operating software and vending machine data. This is accomplished by providing a handheld data transfer device that is adapted to communicate and exchange information with a vending machine controller over wired and wireless communication interfaces. The system also provides software for selecting the vending machine operating software or vending machine data to be transferred, as well as software for controlling various software/data transfer processes. Advantageously, the present invention provides the ability to download and upload vending machine operating software and vending machine data electronically, without opening the vending machine and without replacing EPROMs or similar hardware. Such a system allows for rapid reprogramming of vending machine software during manufacture, test, or in operation. The system further provides for the transfer of manufacturer-specific vending machine data that may be tailored to meet the unique requirements of a particular class of vending machine. Advantageously, this manufacturer-specific data is transferred and stored in binary form, the form most readily used by computers and vending machine controllers. Additionally, the system is economically feasible, commercially practical, and compatible with existing vending machine data transfer protocols.
  • Briefly described, a system embodying aspects of the invention includes a vending machine vending a product. An operating software memory is associated with the vending machine. The operating software memory stores a vending machine operating software. A vending machine controller controls the vending machine as a function of the vending machine operating software stored in the operating software memory. A vending machine I/O port is associated with the vending machine controller. A handheld data transfer device has a data transfer I/O port for communicating with the vending machine I/O port. The handheld data transfer device also has a storage. The transfer device and the vending machine controller are adapted to transfer the vending machine operating program between the storage of the handheld data transfer device and the operating software memory via the data transfer I/O port, the vending machine I/O port, and the vending machine controller. As such, the vending machine operating software is transferred between the operating software memory and the storage of the handheld data transfer device.
  • Another system embodying aspects of the invention includes a vending machine vending a product. An operating software memory is associated with the vending machine. The operating software memory stores a vending machine operating software. A configuration data memory is associated with the vending machine. The configuration data memory stores vending machine configuration data. A data memory is associated with the vending machine. The data memory stores vending machine operational data. A vending machine controller controls the vending machine as a function of the vending machine operating software stored in the operating software memory and of the vending machine configuration data stored in the configuration data memory. The vending machine controller stores the vending machine operational data corresponding to operation of the vending machine in the data memory. A vending machine I/O port is associated with the vending machine controller. A handheld data transfer device has a data transfer I/O port for communicating with the vending machine I/O port. The handheld data transfer device also has a storage. The transfer device initiates a transfer of the vending machine operating software between the storage of the handheld data transfer device and the operating software memory via the data transfer I/O port, the vending machine I/O port, and the vending machine controller. As such, the vending machine operating software is transferred between the operating software memory and the storage of the handheld data transfer device.
  • The invention also includes a process for transferring vending machine operating software stored in a vending machine operating software memory associated with a vending machine. The process includes positioning a handheld data transfer device adjacent a vending machine I/O port associated with the vending machine; establishing a communication channel between a data transfer I/O port of the handheld data transfer device and the vending machine I/O port; and transferring the vending machine operating software from the vending machine operating software memory associated with the vending machine to a storage associated with the handheld data transfer device. The transfer occurs via the communication channel. As such, the vending machine operating software is transferred form the vending machine operating software memory to the storage.
  • In another form, the invention includes a process for transferring vending machine configuration data stored in a configuration memory associated with a vending machine. The process includes positioning a handheld data transfer device adjacent a vending machine I/O port associated with the vending machine; establishing a communication channel between a data transfer I/O port of the handheld data transfer device and the vending machine I/O port; and transferring the vending machine configuration data from the configuration data memory associated with the vending machine to a storage associated with the handheld data transfer device. The transfer occurs via the communication channel. The process further includes positioning the handheld data transfer device adjacent an additional vending machine I/O port associated with an additional vending machine; establishing an additional communication channel between the data transfer I/O port and the additional vending machine I/O port; and transferring the vending machine configuration data stored in the storage to an additional configuration data memory associated with the additional vending machine. The transfer occurs via the additional communication channel. As such, the vending machine configuration data stored in the configuration data memory associated with the vending machine is transferred to the additional configuration data memory associated with the additional vending machine.
  • The invention further includes a process for transferring vending machine operating software from a handheld data transfer device having a storage to a vending machine operating software memory associated with a vending machine. The process includes loading the vending machine operating software into the storage; positioning a data transfer I/O port associated with the handheld data transfer device adjacent a vending machine I/O port associated with the vending machine; establishing a communication channel between the data transfer I/O port and the vending machine I/O port; and transferring the vending machine operating software from the storage to the vending machine operating software memory associated with the vending machine. The transfer occurs via the communication channel.
  • Alternatively, the invention may comprise various other systems and/or processes.
  • Other objects and features will be in part apparent and in part pointed out hereinafter.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • Fig. 1 is block diagram of one preferred embodiment of a vending machine communication system of the invention.
  • Fig. 2 is a block diagram of a database structure suitable for use with the vending machine communication system of Fig. 1.
  • Fig. 3 is a block diagram illustrative of a data transfer aspect of the vending machine communication system of Fig. 1.
  • Figs. 4A-4H are exemplary computer displays for a menu-driven palmtop computer suitable for use with the vending machine communication system of Fig. 1.
  • Corresponding reference characters are intended to indicate corresponding parts throughout the drawings.
  • DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS
  • Referring now to the drawings, Fig. 1 illustrates, in block diagram form, one preferred embodiment of a vending machine communication system according to the present invention. As shown therein, a vending machine controller 10 (VMC) generally controls the operations of a vending machine 12 such that a product dispenser 14 connected to the VMC 10 dispenses a vendable product (e.g., food, beverages, toiletries, etc.), typically by means of an electro-mechanical device. In particular, VMC 10 controls the vending machine 12 as a function of three types of vending machine-related information: vending machine operating software stored in an operating software memory 18; configuration data stored in configuration data memory 20; and operational data stored in operational data memory 24.
  • The vending machine operating software comprises a combination or series of computer instructions and definitions for use by VMC 10 to perform computational or control functions in response to various system inputs and events, including inputs from customers, sensors, operators, and the like.
  • The configuration data memory 20 stores the configuration data associated with vending machine 12. VMC 10 also controls some of the operations of vending machine 12 as a function of the configuration data. The configuration data includes, for example, information regarding the prices of the vendable products, information regarding product configuration and location within vending machine 12, time-of-day information, and such other information as may be required to tailor the operation of vending machine 12 to its location and to the specific vendable products contained therein. Generally speaking, the configuration data may also be referred to as pricing or point-of-sale data.
  • The operational data memory 24 stores operational data associated with vending machine operations. Such operational data includes, for example, sales information related to the vendable products that have been sold by vending machine 12. The operational data may also include information such as machine and subassembly serial numbers, machine location codes, software version numbers, system date and time codes, the date and time of recent data transfers, and the name or I.D. of the route persons/service technicians who have accessed the machine. The operational data may further include information that is particularly relevant to the maintenance of vending machine 12 such as self-diagnostic data or indications of power outages. Usually, VMC 10 stores the operational data in operational data memory 24 in response to a vending machine event 28. For example, a sale of a vendable product would cause VMC 10 to store and/or update the values of various types of operational data in operational data memory 24. For instance, the value of the vendable product would be added to the sales total for that product selection; the total number of vends for that product selection would be incremented; and the time and date of the last vend would be recorded. Operational data may also be referred to as sales data, meter data, or audit data.
  • In the embodiment shown in Fig. 1, operating software memory 18 preferably comprises a flash memory. Those skilled in the art will recognize that flash memories generally have non-volatile characteristics similar to EPROMs, yet may be rapidly reprogrammed without removing or replacing any memory chips. Further, flash memories are relatively inexpensive devices. It is expected that replacing EPROMs with flash memories will result in a negligible increase in parts costs while simultaneously expanding the size of software memory 18 and eliminating an EPROM subassembly. Additionally, it is preferable that the controller clock (not shown in Fig. 1) operate at a sufficiently fast speed to accommodate faster software and data transfer rates. Advantageously and as is illustrated in greater detail below, by using a flash memory in the vending machine communication system of the present invention, vending machine operating software may be downloaded into operating software memory 18, and likewise uploaded from memory 18, without opening the vending machine or removing any hardware from the vending machine.
  • It should be understood that configuration data memory 20 and operational data memory 24 need not necessarily comprise flash memories. Preferably, however, configuration data memory 20 and operational data memory 24 are such that the data stored therein (e.g., configuration and operational data) is not lost if a power disruption occurs. Note also that configuration data memory 20 and operational data memory 24 may comprise a single memory or separate memories.
  • A customer display window 40 is located on an outer housing 42 of vending machine 12. The customer display window 40 is usually positioned at a position that is easily viewable by a typical vending machine customer, such as in the front door of the vending machine 12. A customer display 44 is positioned behind customer display window 40 such that the customer display 44 is viewable by a customer through customer display window 40. VMC 10 controls one or more messages that are to be displayed on customer display 44. The messages may be stored as configuration data in configuration data memory 20, or as part of the operating software in operating software memory 18. Messages displayed on customer display 44 typically include, for instance, greetings, advertising, indications that the machine currently requires exact change, or out of stock information. In the embodiment shown in Fig. 1, customer display 44 preferably comprises a vacuum fluorescent display (VFD) such as that available from Noritake Co., Ltd. (part no. AH1016A).
  • An infrared interface port 46, also referred to as an IR port, an I/O port, or an optical interface port, is disposed behind customer display window 40, adjacent to customer display 44. As explained in greater detail below, vending machine operators, such as service technicians, may communicate and transfer software and data with VMC 10 via the IR port 46.
  • Note that customer display 44 may emit noise signals such as electromagnetic or optical noise signals. An isolator 48 positioned between customer display 44 and IR port 46 reduces the effect that such interference signals may have on IR port 46. Preferably the isolator 48, customer display 44, and IR port 46 are mounted on a single printed circuit board.
  • In the embodiment shown in Fig. 1, IR port 46 comprises an IrDA® compatible, surface mounted IR transceiver, such as that available from Hewlett-Packard Company (part no. HSDL-3610). VMC 10 communicates with IR port 46 via an encoder/decoder integrated circuit 50, such as HSDL-7001, also available from Hewlett-Packard Company. It should be understood that although IR port 46 is described by reference to an IR transceiver only, IR port 46 could also be described by reference to the combination of the IR transceiver and the encoder/decoder 50, or by reference to other circuit combinations, such as a single integrated circuit comprising a transceiver and an encoder/decoder.
  • The vending machine 12 further comprises a cable input/output port 52 for transferring and exchanging software and data using a physical cable interface in lieu of, or in addition to, IR port 46. Cable input/output port 52 may also be referred to as an I/O port. Unlike IR port 46, however, the cable input port 52 requires the use of a physical cable connection 54 (shown in phantom), using a standard ¼ inch (0.64cm) jack-and-plug arrangement-wireless communications are not typically used when VMC 10 communicates using cable input/output port 52.
  • As shown in Fig. 1, the vending machine communication system further includes a handheld data transfer device 60, also referred to as a portable data carrier device (PDCD). Although the PDCD 60 is generally referred to as a data carrier device, it has been found, according to the invention, that PDCD 60 may also be used to store and transfer vending machine operating software. In the embodiment shown, PDCD 60 preferably comprises a palmtop computer with an integrated IrDA® compatible data transfer port 62. Advantageously, palmtop computers are readily available with such integrated data transfer ports 62. Normally, PDCD 60 further includes a display and a user input capability via a keyboard and/or a touch/tap screen, and runs WINDOWS CE® or a similar operating system.
  • The PDCD 60 further comprises a control processor 64 and a memory 65, also referred to as a storage. The control processor 64 communicates across a wireless communication channel 70 via IrDA® compatible data transfer port 62. In other words, PDCD 60 can transfer and exchange software and data with other IrDA® compatible devices via data transfer port 62. Although it is expected that vending machine operators will prefer to use IrDA® data transfer port 62, PDCD 60 may also include one or more cable I/O ports 71 so that PDCD 60 may communicate with other devices, such as, for example, a base station 74 via a physical cable connection 76.
  • The base station 74 preferably comprises a desktop or laptop PC running a widely available operating system, such as WINDOWS 98®. Although it is possible for base station 74 to communicate and exchange data with PDCD 60 using a wireless interface such as an IrDA® port, in the embodiment shown in Fig. 1, base station 74 communicates with PDCD 60 via a standard cable interface 76, such as, for example, an RS-232 interface.
  • Fig. 2 is a block diagram generally illustrating one possible database structure for use with the vending machine communication system shown in Fig. 1. As shown in Fig. 2, base station 74 preferably includes one or more databases or libraries 80 for storing software, data, and other information relevant to vending machine 12 or PDCD 60. In particular, an operating software library 82 stores the vending machine operating software for use with one or more class of vending machine 12. A configuration data library 84 stores the configuration data for one or more class of vending machine 12. Similarly, a sales data library 86 stores sales or other operational data for one or more class of vending machine 12. Although each database/ library 82, 84, 86 is illustrated separately in Fig. 2, the libraries 80 may be organized and store software and data in many different ways. For example, the data and software may be stored by specific reference to a class/type of vending machine 12. Conversely, the data and software may be stored by reference to vending machine locations. Also, while Fig. 2 illustrates the libraries 80 as existing in databases stored on base station 74, libraries 80 may be simultaneously and/or separately maintained on other devices such as, for example, PDCD 60, a main frame, or the like.
  • One significant advantage of the present invention is that vending machine operating software or configuration data may be transferred between PDCD 60 and vending machine 12 without opening vending machine 12 and without replacing any hardware such as EPROMs. Using the vending machine operating software as an example, a vending machine service technician or similar person selects and, if desired, amends/edits an appropriate version of the vending machine operating software stored on base station 74. Cable port 71 on PDCD 60 is connected to a corresponding port associated with base station 74 and the service technician initiates a software transfer. The vending machine operating software is thereafter transferred to PDCD 60 which stores the software in the memory/storage 65.
  • After the selected vending machine operating software is loaded on PDCD 60, PDCD 60 is placed near vending machine window 44 so that the IrDA® port 62 associated with PDCD 60 may communicate with the IR port 46 mounted behind vending machine window 44. Using a keyboard, mouse, or touch/tap screen associated with PDCD 60, the technician initiates a software transfer between PDCD 60 and vending machine 12 by selecting a desired transfer option on the user display associated with PDCD 60 (see Figs. 4A-4H and related discussion below). The transfer initiation command is transmitted by IrDA® port 62 and received at IR port 46. Preferably, the transfer initiation command identifies the type of information to be transferred, in this case the vending machine operating software. VMC 10 receives the transfer initiation command and, when ready, responds with an appropriate acknowledgment message indicating that it has received the command and is ready to receive the information, including the vending machine operating software. Upon the transfer of the last software item, PDCD 60 typically transmits a transfer complete message, and VMC 10 typically provides an appropriate response acknowledging that the transfer is complete.
  • Preferably, the transfer occurs in discrete blocks with appropriate handshaking between PDCD 60 and VMC 10 occurring between each block transfer. Optionally, however, it is possible to transfer the vending machine operating software in a continuous stream. In addition to handshaking, standard information transfer integrity checks may also be employed such as, for example, checksums, parity checks, or the like.
  • Although the above discussion illustrates how the vending machine operating software may be downloaded into vending machine 12, the vending machine communication system of the present system also provides for uploading the vending machine operating software from vending machine 12. Stated differently, the present invention allows users to transfer the operating software from vending machine 12 to PDCD 60 for subsequent transfer to another vending machine (see reference character 12' in Fig. 3 and associated discussion below) or to base station 74. In such cases, PDCD 60 is placed near vending machine window 40. An upload is initiated on PDCD 60 which transmits an appropriate upload initiation message to vending machine 12 via IrDA® data port 62, wireless communication channel 70, IR port 46, encoder/decoder 50, and VMC 10. Upon receipt of the upload initiation message, VMC 10 responds with an appropriate acknowledgment or ready indication. When ready, VMC 10 retrieves the vending machine operating software from operating software memory 18 and outputs the operating software to IR port 46 via encoder/decoder 50. PDCD 60 receives the operating software at IrDA® port 62 via wireless communication channel 70. The control processor 64 associated with PDCD 60 thereafter stores the operating software in memory storage 65. After the vending machine operating software has been uploaded from vending machine 12 to PDCD 60, it may be thereafter transferred to base station 74 or to another vending machine 12' (Fig. 3). Further, as explained above, the vending machine operating software is preferably transferred in discrete blocks.
  • Fig. 3 illustrates the process by which the vending machine communication system of the present invention may be used to transfer vending machine operating software (or other information such as, for example, configuration data ) from one vending machine 12 to another or an additional vending machine 12' of the same type or class as vending machine 12 shown in Fig. 1. As shown in Figs. 1 and 3, the vending machine operating software residing in operating software memory 18 on vending machine 12 is transferred (as indicated by arrow UT) to PDCD 60 in a manner similar to that described above with respect to uploading the vending machine operating software. Thereafter, the transferred operating software now residing in PDCD memory 65 is transferred (as indicated by arrow DT) to a corresponding vending machine operating software memory 18' associated with another or an additional vending machine 12' in a manner similar to that described above with respect to downloading the vending machine operating software. After the transfer is complete, vending machine 12 and vending machine 12' both have the same operating software stored in their respective operating software memories 18, 18'. As indicated above, operating software memories 18, 18' preferably comprise flash memories that facilitate rapid reprogramming and reloading of the vending machine operating program.
  • Note also that vending machine 12' is substantially identical to vending machine 12 with respect to the relevant aspects of the present invention. For example, vending machine 12' includes a display window 40' and a customer display 44'. Similarly, vending machine 12' includes comparable memories and I/O interfaces, and communicates via an additional communication channel 70' (as indicated by arrow DT).
  • The process for transferring vending machine operating software from PDCD 60 to operating software memory 18, as shown in Fig. 1, may also be described in terms of the following steps: loading the vending machine operating software into storage 65, either manually or from base station 74 over interface cable 76; positioning PDCD 60 near vending machine 12 such that IrDA® port 62 is adjacent IR port 46; establishing a communication channel between IrDA® port 62 and IR port 46 via wireless communication channel 70; and transferring the vending machine operating software from storage 65 to operating software memory 18, via IrDA® port 62, wireless communication channel 70, IR port 46, encoder/decoder 50, and VMC 10.
  • Similarly, the process for uploading/transferring vending machine operating software from vending machine 12 to PDCD 60, as shown in Figs. 1 and 3, may also be described in terms of the following steps: positioning PDCD 60 near window 40 on vending machine 12 such that PDCD 60 is adjacent IR port 46; establishing a communication channel between IrDA® port 62 and IR port 46 via wireless communication channel 70 (see also reference character UT in Fig. 3); and transferring the vending machine operating software from the vending machine operating software memory 18 to storage 65 associated with PDCD 60 via VMC 10, encoder decoder 50, IR port 46, wireless communication channel 70, and IrDA® port 62.
  • When the vending machine operating software is stored in storage 65, it may thereafter be downloaded/transferred into the additional vending machine 12', as shown in Fig. 3. The process for transferring the vending machine operating software from PDCD 60 to the additional vending machine 12', as shown in Figs. 1 and 3, may be also be described in terms of the following steps: positioning PDCD 60 near additional window 40' on additional vending machine 12' such that PDCD 60 is adjacent the additional IR port 46'; establishing an additional communication channel between IrDA® port 62 and the additional IR port 46' via an additional wireless communication channel 70' (see also reference character DT in Fig. 3); and transferring the vending machine operating software stored in storage 65 to the additional vending machine operating software memory 18' associated with the additional vending machine 12' via IrDA® port 62, the additional wireless communication channel 70', the additional IR port 46', the additional encoder/decoder 50', and the additional VMC 10'.
  • Likewise, the process for transferring vending machine configuration data from vending machine 12 to the additional vending machine 12', as shown in Figs. 1 and 3, may also be described in terms of the following steps: positioning PDCD 60 near window 40 on vending machine 12 such that PDCD 60 is adjacent IR port 46; establishing a communication channel between IrDA® port 62 and IR port 46 via wireless communication channel 70 (see also reference character UT in Fig. 3); and transferring the vending machine configuration data from the configuration data memory 20 to storage 65 associated with PDCD 60 via VMC 10, encoder decoder 50, IR port 46, wireless communication channel 70, and IrDA® port 62. After the vending machine configuration data is stored in storage 65, the process for thereafter downloading the data into the additional vending machine 12' may be described in terms of the following steps: positioning PDCD 60 near additional window 40' on vending machine 12' such that PDCD 60 is adjacent additional IR port 46'; establishing an additional communication channel between IrDA® port 62 and additional IR port 46' via an additional wireless communication channel 70' (see also reference character DT in Fig. 3); and transferring vending machine configuration data stored in storage 65 to additional configuration data memory 20' associated with additional vending machine 12'. After the final transfer occurs, the vending machine configuration data stored in configuration data memory 20 also resides (e.g., is transferred) in additional configuration data memory 20' associated with additional vending machine 12'.
  • The ability to update and transfer vending machine operating software "on the fly," without the need to open vending machine 12 or remove an EPROM or otherwise physically contact vending machine 12 provides substantial improvements over the prior art. For instance, vending machine manufacturers may load software into multiple vending machines in much less time that it would take to program and replace EPROMs. Further, vending machine software developers can download and upload vending machine software with much shorter turn-around times. If, for instance, software problems are suspected with a particular machine or machine class, the suspect operating software may be uploaded from vending machine 10 into PDCD 60 for subsequent analysis and debugging. Base station 74 or PDCD 60 may be optionally equipped with suitable software analysis and debugging tools.
  • Similar advantages and time savings will also be realized in the field. Vending machine manufacturers may provide software updates to vending machine operators, without sending any EPROMs or other hardware. Operators may, in turn, load the new software in their machines using PDCD 60 whenever it is convenient, such as when a machine is scheduled to be re-stocked. Advantageously, there is no need to use specially trained technicians.
  • Note also that the vending machine configuration data and/or the vending machine operational data may be transferred to or from vending machine 12, or between vending machines 12, 12', in the same way that the vending machine operating software may be transferred to or from vending machine 12, or between vending machines 12, 12'. Moreover, control processor 64 of PDCD 60 may optionally execute software that allows persons operating PDCD 60 to view and edit the vending machine operating software, configuration data, and/or the vending machine operational data on a display (not shown) of PDCD 60. Similar software could also run on base station 74. It should be noted, however, that due to the nature of the type of information stored as operational data, it is unlikely that such data would be edited. Thus, the operational data can be stored in a read-only format. In fact, in one preferred embodiment of the present invention, operational data is not transferred (e.g., uploaded or downloaded) using PDCD 60. In such an embodiment, prior art devices using the DEX/UCS protocol may be used to retrieve vending machine sales or operational data.
  • One drawback of the EVA-DTS is that it confines data to standard data definitions and limits the data to only 431 elements. Such limitations result in a substantial decrease in flexibility―flexibility that is necessary if a vending machine manufacturer or operator wishes to more precisely define the configuration data associated with its family of vending machines. Advantageously, in the vending machine communication system of the present invention, the configuration data also comprises one or more manufacturer-specific lists that are independent of the lists specified in the EVA-DTS, Version 4, January 4, 1997. Tables I & II are illustrative of typical manufacturer-specific lists.
    Exemplary Configuration List from a Snack Vending Machine
    Data Type Data
    Class Identifier
    1580
    Prices A0-A9 00230023001E001E0028002800230023003D0023
    Prices B0-B9 0064002300690023001E001E0028002800230045
       ...    ...
    Prices H1-H5 0023000A000E000130018
    Coin/Bill/Card Config. 2A0400010345008912
    Messages 120A230E240A2418130C0E240DA202424242424242424
    201E0E0A1D0E241F1D0E240E210A0C18240C120A12130E
       ...    ...
    242424240A0B0C0D0E0F1011121314151624242424242424
    Time-of-Day Setup 00002000010000..00034430001E
    Temperature Config. 00260023EFA4
    Snack Motor Config. 0100010001000100101010102020..01010000010200000000
    Exemplary Configuration List from a Coffee Vending Machine
    Data Type Data
    Class Identifier 6330
    Prices 0A-1A 0023002B
    Prices 0B-1B 00230032
       ...    ...
    Prices 0F-1F 00230032
    Timers for 0A 00100034001200A401..230F0F0ED
    Timers for 1A 00210034001700A003..3434
       ...    ...
    Timers for 1F 034024BC0034..4545
    Coin/Bill/Card Config. 2A0400010345008912
    Time-of-Day Setup 00010000..000B0001E
    Water Valve Map 01234
    Messages 120A230E240A2418130C0E240DA202424242424242424
    201E0E0A1D0E241F1D0E240E210A0C18240C120A12130E
       ...    ...
    242424240A0B0C0D0E0F1011121314151624242424242424
  • As shown in Tables I and II, certain data may be identical between two different classes of vending machine, yet the information may be placed at different positions within the list structure associated with each machine class (see, e.g., Coin/Bill/Card Config. data). Likewise, some data may be similar between machines (e.g., Prices or Time-of-Day Setup) yet occur in different quantities or different positions within the list. Conversely, some data may be unique to particular classes of vending machine. For instance, the snack vending machine data block shown in Table I includes snack motor configuration data while the coffee machine data block shown in Table II includes timer and water valve data. Thus, the specific format for the data occurring in a given list is determined as a function of the class of the vending machine associated with the configuration data. Consequently, a vending machine class identifier is embedded in each manufacturer-specific list. Advantageously, VMC 10 may be programmed using vending machine software that causes VMC 10 to automatically reject lists containing mismatched class identifiers.
  • PDCD may also be used to transfer the configuration data from one vending machine to another vending machine in a similar fashion to that described above with respect to vending machine operating software. Moreover, PDCD 60 need not be specifically programmed or have any special knowledge with respect to the data other than to know that it is manufacturer-specific list data. One way to identify such configuration data is to use a unique list number that identifies the data as manufacturer-specific data. In other words, PDCD 60 may initiate data transfers simply by reference to a particular manufacturer-specific list number or other convenient identifier.
  • It is also possible to further subdivide the manufacturer-specific configuration data into sublists. For example, if a complete list of manufacturer-specific configuration data is contained in List 65, a List 66 may also be created that includes only message data (e.g., the messages displayed on customer display 44). Such sublists provide flexibility and allow updating and transferring common data between different classes of machines that use a common data structure for like data. In other words, the vending machine communication system of the present invention advantageously provides for manufacturer-specific data transfers between similar and dissimilar vending machines even though PDCD 60 requires only very limited information regarding the particular data involved (e.g., only a list number). Of course, PDCD 60 may also be programmed to allow a user to view and edit the information contained in any manufacturer-specific list.
  • Alternatively, a sublist code may be embedded within the a primary list identifier. For example, List 66 may be embedded and identified as sublist data within List 65. In this way, PDCD 60 only needs to interpret the primary list identifier to determine that the list comprises a manufacturer-specific list-PDCD 60 would not need to be programmed to recognize specific sublists or sublist identifiers.
  • Note that the vending machine operating software may also be stored and transferred in a list format. In that way, PDCD 60 need only know the specific list number or identifier when uploading or downloading vending machine operating software.
  • Preferably, the configuration data and the operational data are transferred and stored in binary form. Prior art systems, such as that described in the EVA-DTS specification mentioned above, transfer and store data in ASCII form. Computers and processors such as VMC 10, PDCD 60, and base station 74, on the other hand, cannot readily use ASCII data-the data must normally be converted from ASCII for processing. In the present invention, data remains in binary form. Furthermore, transferring data in ASCII form tends to expand the size of the data formats used and requires the addition of identifiers and delimiters. Consequently, ASCII data transfers require more time and memory than comparable binary data transfers. Thus, it is manifest that a vending machine communication system that transfers and stores data in binary form provides distinct advantages in terms of data transfer rates, data storage requirements, and data message size requirements. Similarly, the vending machine operating software is preferably transferred and stored in binary form.
  • Figs. 4A through 4H illustrate several possible graphical user interface screens for a menu-driven software application associated with PDCD 60. In particular, Figs. 4A through 4H illustrate user selection screens that are compatible with a palmtop computer running the WINDOWS CE® operating system. Fig. 4A illustrates a menu selection whereby a person using PDCD 60 may select between an infrared connection using wireless communication channel 70, or a direct connection using physical cable connection 54. Fig. 4B depicts a typical vending machine selection window wherein the selection options are organized by vending machine class. It should be noted that the selection window may also be customized to allow users to select the type of information/data to be transferred (e.g., vending machine operating code, vending machine configuration data, or vending machine operational data).
  • Figs. 4A and 4B both show separate "Download" and "Upload" selection buttons. By selecting one of these buttons, a user can initiate a data download or upload. It should be noted that the meaning of the words download and upload may vary among those skilled in the art, depending upon the context in which those words are used. For example, one person might refer to all transfers from PDCD 60 to vending machine 10 as downloads, and similarly refer to all transfers from vending machine 10 to PDCD 60 as uploads. This is the convention generally adhered to herein. Conversely, another person may prefer to refer to such transfers in opposite terms, e.g., referring to all transfers from PDCD 60 to vending machine 10 as uploads. Either convention is acceptable, so long as the terms are used consistently.
  • Figs. 4C and 4D illustrate typical displays indicative of the status of a selected data transfer. Figs. 4E and 4F depict typical file management displays for use with PDCD 60. As shown therein, a file pull down menu allows users to manipulate various file attributes such as file names. Users may also initiate data transfers (e.g., uploads or downloads) from the file menu.
  • Fig. 4G shows a representative list of options available if a user selects the "Start" option associated with a palmtop computer running the WINDOWS CE® operating system. The palmtop application software associated with the vending machine communication system of the present invention is referred to as "nvzap" in the illustrated list of "Start" options. Application software such as nvzap may be created using an object-oriented authoring tool such as Visual C++®, available from Microsoft.
  • Fig. 4H is a typical security feature that may be used with PDCD 60. In particular, access to specific data, and to the ability to transfer data, may be limited by the use of passwords or similar such devices.
  • Advantageously, similar menu-driven options may also be provided on base station 74 as are provided on PDCD 60. Base station 74 may also provide additional data manipulation and programming capabilities that are not easily implemented on a handheld unit such as PDCD 60. For example, a computer program executing on base station 74 provides a menu-drive, graphical user interface whereby a user has access to vending machine operating software, operational data, or configuration data in a form that is readable and understandable by the user. Such a program could also allow certain users to edit or otherwise alter the accessed vending machine operating software, operational data, or configuration data.
  • As briefly mentioned above, security and integrity checks may control or limit any or all of the above-described data transfer operations. For instance, password protections can be used to limit access to data, portions of data, the system, or portions of the system. Access to specific data may be denied altogether or limited in some other way such as "read only" access. Similarly, password protections may be used to limit a person's ability to initiate data transfers between base station 74 and PDCD 60, and between PDCD 60 and vending machine 12. Other possible integrity checks include embedded codes contained within the data/information exchanged. For example, vending machine 12 can provide a code indicative of a vending machine's class/type to ensure that only software or configuration data associated with that type of machine is downloaded into the operating software memory of that machine.
  • It should also be understood that the term transfer is used broadly herein. For example, software and data transfers are intended to include copying wherein after a transfer occurs, a copy of the original information remains on the source device (e.g., PDCD 60) and a copy of the original information is also stored on the target device (e.g., operating software memory 18). Similarly, software and data may be literally transferred such that after a transfer, the software and/or data resides on the target device but not on the source device. A transfer can also involve overwriting existing information. If, for instance, a copy of the vending machine operating software already existed in the memory storage 65 associated with PDCD 60, and if an overwrite occurs, the new software that is downloaded to PDCD 60 overwrites the existing software on PDCD 60. It should also be understood, that the vending machine communication system of the present invention supports partial transfers, partial copies, and partial overwrites of software and data.
  • In view of the above, it will be seen that the several objects of the invention are achieved and other advantageous results attained.
  • As various changes could be made in the above constructions and methods without departing from the scope of the invention, it is intended that all matter contained in the above description or shown in the accompanying drawings shall be interpreted as illustrative and not in a limiting sense.

Claims (10)

  1. A system comprising:
    a vending machine (12) vending a product;
    an operating software memory (18) associated with the vending machine (12), said operating software memory (18) storing a vending machine operating software;
    a vending machine controller (10) controlling the vending machine (12) as a function of the vending machine operating software stored in the operating software memory (18) ;
    a vending machine I/O port (46, 52) associated with the vending machine controller (10); and
    a handheld data transfer device (60) having a data transfer I/O port (62, 71) for communicating with the vending machine I/O port (46, 52) and having a storage associated with the data transfer device (60), said transfer device (60) and said vending machine controller (10) adapted to transfer the vending machine operating software between the storage of the handheld data transfer device (60) and the operating software memory via the data transfer I/O port (62, 71), the vending machine I/O port (46, 52), and the vending machine controller (10), whereby the vending machine operating software is transferred between the operating software memory (18) and the storage of the handheld data transfer device (60).
  2. A system according to claim 1, wherein the vending machine operating software is uploaded from the operating software memory (18) to the vending machine controller (10) so that the vending machine controller (10) outputs the uploaded operating software to the vending machine I/O port (46, 52), so that the handheld data transfer device (60) receives the uploaded operating software at the data transfer I/O port (62, 71) and stores the uploaded operating software in the storage (65) associated with the handheld data transfer device (60); or
       wherein the vending machine operating software is downloaded from the storage (65) associated with the handheld data transfer device (60) to the handheld data transfer device (60) so that the handheld data transfer device (60) outputs the downloaded operating software to the data transfer I/O port (62, 71), so that the vending machine controller (10) receives the downloaded operating software at the vending machine I/O port (46, 52) and stores the downloaded operating software in the operating software memory (18).
  3. A system according to claim 1 or claim 2, further comprising a window (40) located on the exterior of the vending machine (12) and wherein the vending machine I/O port (46) comprises an IrDA® compatible optical communication transceiver positioned within the window (40).
  4. A system according to any one of claims 1 to 3, further comprising:
    a configuration data memory (20) associated with the vending machine (12), said configuration data memory (20) storing vending machine configuration data;
    a data memory (24) associated with the vending machine (12), said data memory (24) storing vending machine operational data; and
    wherein the vending machine controller (10) controls the vending machine (12) as a function of the vending machine configuration data stored in the configuration data memory (20), and wherein the vending machine controller (10) stores in the data memory (24) the vending machine operational data corresponding to operation of the vending machine (12).
  5. A system according to any one of claims 1 to 4, further comprising a computer station (74) comprising:
    a computer I/O port communicating with the handheld data transfer device (60);
    a computer memory (82, 84, 86) storing the vending machine operating software, the vending machine configuration data, and the vending machine operational data; and
    a computer program accessing the computer memory (82, 84, 86), said computer program providing a graphical user interface allowing a user to access the vending machine operating software, the vending machine configuration data, and the vending machine operational data in a form readable by the user.
  6. A system according to any one of claims 1 to 5, wherein the graphical user interface of the computer program further allows the user to alter the vending machine operating software (82) stored in the computer memory, the vending machine configuration data (84) stored in the computer memory, or the vending machine operational data (86) stored in the computer memory.
  7. A system according to any one of claims 1 to 6, further comprising:
    an additional vending machine (12') vending an additional product;
    an additional operating software memory (18') associated with the additional vending machine (12'), said additional operating software memory (18') storing an additional vending machine operating software;
    an additional configuration data memory (20') associated with the additional vending machine (12'), said additional configuration data memory (20') storing an additional vending machine configuration data set;
    an additional vending machine controller (10') associated with the additional vending machine (12'), said additional vending machine controller (10') controlling the additional vending machine (12') as a function of the additional vending machine operating software and of the additional vending machine configuration data set;
    an additional vending machine I/O port (46') associated with the additional vending machine controller (10') ;
    wherein the vending machine operating software is uploaded from the operating software memory (18) associated with the vending machine (12) to the vending machine controller (10) so that the vending machine controller (10) outputs the uploaded operating software to the vending machine I/O port (46), and wherein the handheld data transfer device (60) receives the uploaded operating software at the data transfer I/O port (62) and stores the uploaded operating software in the storage associated with the handheld data transfer device (60);
    wherein the vending machine configuration data is uploaded from the configuration data memory associated with the vending machine (12) to the vending machine controller (10) so that the vending machine controller (10) outputs the uploaded vending machine configuration data to the vending machine I/O port (46), and wherein the handheld data transfer device (60) receives the uploaded vending machine configuration data at the data transfer I/O port (62) and stores the uploaded vending machine configuration data in the storage associated with the handheld data transfer device;
    wherein the uploaded vending machine operating software from the storage associated with the handheld data transfer device (60) is downloaded to the handheld data transfer device (60) so that the handheld data transfer device (60) outputs the uploaded operating software to the data transfer I/O port (62), and wherein the additional vending machine controller (10') receives the uploaded operating software at the additional vending machine I/O port (46') and stores the uploaded operating software in the additional operating software memory (18') whereby the operating software stored in the operating software memory (18) associated with the vending machine (12) is transferred to the additional operating software memory (18') associated with the additional vending machine (12') thereby replacing the additional vending machine operating software with the vending machine operating software; and
    wherein the uploaded vending machine configuration is downloaded from the storage associated with the handheld data transfer device (60) to the handheld data transfer device (60) so that the handheld data transfer device (60) outputs the uploaded vending machine configuration to the data transfer I/O port (62), and wherein the additional vending machine controller (10') receives the uploaded vending machine configuration at the additional vending machine I/O port (46') and stores the uploaded vending machine configuration in the additional configuration data memory (18') whereby the vending machine configuration data stored in the configuration data memory (18) associated with the vending machine (12) is transferred to the additional configuration data memory (18') associated with the additional vending machine (12') thereby replacing the additional vending machine configuration data.
  8. A process for transferring vending machine operating software stored in a vending machine (12) operating software memory associated with a vending machine (12), the process comprising the steps of:
    positioning a handheld data transfer device (60) adjacent a vending machine I/O port (46) associated with the vending machine (12);
    establishing a communication channel (70) between a data transfer I/O port (62) of the handheld data transfer device (60) and the vending machine I/O port (46); and
    transferring the vending machine operating software between the vending machine operating software memory (18) associated with the vending machine (12) and a storage associated with the handheld data transfer device (60), said transfer occurring via the communication channel (70), whereby the vending machine operating software is transferred to, or from, the vending machine operating software memory (18) to the storage.
  9. A process according to claim 8, further comprising the steps of:
    positioning the handheld data transfer device (60) adjacent an additional vending machine I/O port (46') associated with an additional vending machine (12');
    establishing an additional communication channel (70') between the data transfer port (62) and the additional vending machine I/O port (46'); and
    transferring the vending machine operating software stored in the storage to an additional vending machine operating software memory (18') associated with the additional vending machine (12'), said transfer occurring via the additional communication channel (76'), whereby the vending machine operating software stored in the vending machine operating software memory (18) associated with the vending machine (12') is transferred from the storage to the additional vending machine operating software memory (18') associated with the additional vending machine (12').
  10. A process according to claim 8 or claim 9, further comprising a process for transferring vending machine configuration data stored in a configuration data memory (18) associated with an vending machine (12) comprising the steps of:
    transferring the vending machine configuration data from the configuration data memory (18) associated with the vending machine (12) to the storage associated with the handheld data transfer device (60), said transfer occurring via the communication channel (70);
    positioning the handheld data transfer device (60) adjacent an additional vending machine I/O port (46') associated with an additional vending machine (12').
    establishing an additional communication channel (70') between the data transfer I/O port (62) and the additional vending machine I/O port (46'); and
    transferring the vending machine configuration data stored in the storage to an additional configuration data memory (18') associated with the additional vending machine (12'), said transfer occurring via the additional communication channel (70'), whereby the vending machine configuration data stored in the configuration data memory (18) associated with the vending machine (12) is transferred to the additional configuration data memory (18') associated with the additional vending machine (12').
EP00309499A 1999-10-27 2000-10-27 Vending machine communication system Withdrawn EP1096408A3 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US42862799A 1999-10-27 1999-10-27
US428627 1999-10-27

Publications (2)

Publication Number Publication Date
EP1096408A2 true EP1096408A2 (en) 2001-05-02
EP1096408A3 EP1096408A3 (en) 2002-08-14

Family

ID=23699717

Family Applications (1)

Application Number Title Priority Date Filing Date
EP00309499A Withdrawn EP1096408A3 (en) 1999-10-27 2000-10-27 Vending machine communication system

Country Status (3)

Country Link
EP (1) EP1096408A3 (en)
JP (1) JP2001188940A (en)
CA (1) CA2323292A1 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004051583A1 (en) * 2002-11-27 2004-06-17 Cac Vending Systems, L.L.C. System, method and apparatus for vending machine wireless audit and cashless transaction transport
US7693602B1 (en) 2001-03-26 2010-04-06 Usa Technologies, Inc. Cashless vending transaction management by a vend assist mode of operation
US20110173535A1 (en) * 2010-01-12 2011-07-14 Crane Merchandising Systems, Inc. Mechanism for a vending machine graphical user interface utilizing xml for on-the-fly language selection by an end user
DE102010054374A1 (en) * 2010-12-13 2012-06-14 National Rejectors, Inc. Gmbh Method for reading out information from vending machine, involves exchanging information between vending machine and machine terminal, and transmitting information of vending machine to mainframe computer via communication link
US8533315B2 (en) 2007-10-25 2013-09-10 Crane Merchandising Systems, Inc. Systems and methods for monitoring performance of field assets

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8631093B2 (en) 1998-03-19 2014-01-14 Crane Merchandising Systems, Inc. Remote data acquisition, transmission and analysis system including handheld wireless equipment
US7690495B1 (en) 2001-03-26 2010-04-06 Usa Technologies, Inc. Card reader assembly
US8596529B1 (en) 2001-03-26 2013-12-03 Usa Technologies, Inc. Interactive interface effectuated vending
US7865430B1 (en) 2001-03-26 2011-01-04 Usa Technology, Inc. Cashless transaction payment module
US7778600B2 (en) 2001-06-29 2010-08-17 Crane Merchandising Systems, Inc. Apparatus and method to provide multiple wireless communication paths to and from remotely located equipment
US7164884B2 (en) 2001-06-29 2007-01-16 Isochron, Llc Method and system for interfacing a machine controller and a wireless network
US8484068B2 (en) 2005-12-14 2013-07-09 Crane Merchandising Systems, Inc. Method and system for evaluating consumer demand for multiple products and services at remotely located equipment
US7997484B2 (en) 2006-09-13 2011-08-16 Crane Merchandising Systems, Inc. Rich content management and display for use in remote field assets
US8959028B2 (en) 2007-07-02 2015-02-17 Crane Merchandising Systems, Inc. Apparatus and method for monitoring and control of remotely located equipment

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3113946A1 (en) * 1981-04-07 1982-10-28 Hollmann Gmbh & Co, 4800 Bielefeld Vending machine, especially self-service vending machine
EP0090431A2 (en) * 1982-03-31 1983-10-05 The Coca-Cola Company Energy management system for vending machines
EP0479297A2 (en) * 1990-10-03 1992-04-08 Sanyo Electric Co., Ltd Automatic vending machine
US5299113A (en) * 1992-04-22 1994-03-29 Maytag Corporation Control board having dual means of configuration

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3113946A1 (en) * 1981-04-07 1982-10-28 Hollmann Gmbh & Co, 4800 Bielefeld Vending machine, especially self-service vending machine
EP0090431A2 (en) * 1982-03-31 1983-10-05 The Coca-Cola Company Energy management system for vending machines
EP0479297A2 (en) * 1990-10-03 1992-04-08 Sanyo Electric Co., Ltd Automatic vending machine
US5299113A (en) * 1992-04-22 1994-03-29 Maytag Corporation Control board having dual means of configuration

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7693602B1 (en) 2001-03-26 2010-04-06 Usa Technologies, Inc. Cashless vending transaction management by a vend assist mode of operation
WO2004051583A1 (en) * 2002-11-27 2004-06-17 Cac Vending Systems, L.L.C. System, method and apparatus for vending machine wireless audit and cashless transaction transport
US8533315B2 (en) 2007-10-25 2013-09-10 Crane Merchandising Systems, Inc. Systems and methods for monitoring performance of field assets
US20110173535A1 (en) * 2010-01-12 2011-07-14 Crane Merchandising Systems, Inc. Mechanism for a vending machine graphical user interface utilizing xml for on-the-fly language selection by an end user
US20110173568A1 (en) * 2010-01-12 2011-07-14 Crane Merchandising Systems, Inc. Mechanism for a vending machine graphical user interface utilizing xml for a versatile customer experience
DE102010054374A1 (en) * 2010-12-13 2012-06-14 National Rejectors, Inc. Gmbh Method for reading out information from vending machine, involves exchanging information between vending machine and machine terminal, and transmitting information of vending machine to mainframe computer via communication link

Also Published As

Publication number Publication date
JP2001188940A (en) 2001-07-10
EP1096408A3 (en) 2002-08-14
CA2323292A1 (en) 2001-04-27

Similar Documents

Publication Publication Date Title
EP1096408A2 (en) Vending machine communication system
US5841654A (en) Windows based network configuration and control method for a digital control system
US5955718A (en) Integrated credit/information exchange module
US6118860A (en) Public communications services vending method and apparatus
JPH09507593A (en) Vending machine remote monitoring system
US6722985B2 (en) Universal player tracking system
US5440479A (en) Apparatus and method for purchasing floral arrangements
CA2352932A1 (en) Customizable and upgradable devices and methods related thereto
US5619024A (en) Credit card and bank issued debit card operated system and method for controlling and monitoring access of computer and copy equipment
US20040158499A1 (en) System and method for providing self-service restaurant ordering and payment
US20040133653A1 (en) System, method and apparatus for vending machine wireless audit and cashless transaction transport
US20040046033A1 (en) Electronic warranty system and method
US20070096867A1 (en) Vending machines with field-programmable electronic locks
JPH0713824B2 (en) Data collection system
WO1997010562A1 (en) Programming interface for a smart card kiosk
WO2010069039A1 (en) Dynamic configurable transaction system
CA1154164A (en) Magnetic stripe card author
US20030116621A1 (en) Self-service terminal
EP1197897A1 (en) Method and system for displaying custom-made product specification information, server and terminal for the system, and method of selecting custom-made product specifications
KR100402762B1 (en) Controller system for game machine by using network and controlling method thereof
WO1996036023A1 (en) Method of updating of prices and display of messages in a local unit
WO2004051583A1 (en) System, method and apparatus for vending machine wireless audit and cashless transaction transport
KR100795341B1 (en) Scale as control system
JP3700169B2 (en) Vending machine control system
JPH09270059A (en) Control program display system for automatic vending machine

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

AK Designated contracting states

Kind code of ref document: A2

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LI LU MC NL PT SE

AX Request for extension of the european patent

Free format text: AL;LT;LV;MK;RO;SI

PUAL Search report despatched

Free format text: ORIGINAL CODE: 0009013

AK Designated contracting states

Kind code of ref document: A3

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LI LU MC NL PT SE

AX Request for extension of the european patent

Free format text: AL;LT;LV;MK;RO;SI

AKX Designation fees paid
REG Reference to a national code

Ref country code: DE

Ref legal event code: 8566

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20030215

REG Reference to a national code

Ref country code: HK

Ref legal event code: WD

Ref document number: 1036659

Country of ref document: HK