EP1096408A2 - Vending machine communication system - Google Patents
Vending machine communication system Download PDFInfo
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F5/00—Coin-actuated mechanisms; Interlocks
- G07F5/18—Coin-actuated mechanisms; Interlocks specially adapted for controlling several coin-freed apparatus from one place
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F9/00—Details other than those peculiar to special kinds or types of apparatus
- G07F9/001—Interfacing with vending machines using mobile or wearable devices
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F9/00—Details other than those peculiar to special kinds or types of apparatus
- G07F9/002—Vending machines being part of a centrally controlled network of vending machines
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F9/00—Details other than those peculiar to special kinds or types of apparatus
- G07F9/02—Devices for alarm or indication, e.g. when empty; Advertising arrangements in coin-freed apparatus
- G07F9/026—Devices 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
Description
- 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.
- 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.
- 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.
- 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 aproduct dispenser 14 connected to theVMC 10 dispenses a vendable product (e.g., food, beverages, toiletries, etc.), typically by means of an electro-mechanical device. In particular,VMC 10 controls thevending machine 12 as a function of three types of vending machine-related information: vending machine operating software stored in anoperating software memory 18; configuration data stored inconfiguration data memory 20; and operational data stored inoperational 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 withvending machine 12.VMC 10 also controls some of the operations of vendingmachine 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 vendingmachine 12, time-of-day information, and such other information as may be required to tailor the operation ofvending 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 vendingmachine 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 ofvending machine 12 such as self-diagnostic data or indications of power outages. Usually,VMC 10 stores the operational data inoperational data memory 24 in response to avending machine event 28. For example, a sale of a vendable product would causeVMC 10 to store and/or update the values of various types of operational data inoperational 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 ofsoftware 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 intooperating software memory 18, and likewise uploaded frommemory 18, without opening the vending machine or removing any hardware from the vending machine. - It should be understood that
configuration data memory 20 andoperational data memory 24 need not necessarily comprise flash memories. Preferably, however,configuration data memory 20 andoperational 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 thatconfiguration data memory 20 andoperational data memory 24 may comprise a single memory or separate memories. - A
customer display window 40 is located on anouter housing 42 ofvending machine 12. Thecustomer 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 thevending machine 12. Acustomer display 44 is positioned behindcustomer display window 40 such that thecustomer display 44 is viewable by a customer throughcustomer display window 40.VMC 10 controls one or more messages that are to be displayed oncustomer display 44. The messages may be stored as configuration data inconfiguration data memory 20, or as part of the operating software in operatingsoftware memory 18. Messages displayed oncustomer 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 behindcustomer display window 40, adjacent tocustomer display 44. As explained in greater detail below, vending machine operators, such as service technicians, may communicate and transfer software and data withVMC 10 via theIR port 46. - Note that
customer display 44 may emit noise signals such as electromagnetic or optical noise signals. An isolator 48 positioned betweencustomer display 44 andIR port 46 reduces the effect that such interference signals may have onIR port 46. Preferably theisolator 48,customer display 44, andIR 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 withIR port 46 via an encoder/decoder integratedcircuit 50, such as HSDL-7001, also available from Hewlett-Packard Company. It should be understood that althoughIR 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. UnlikeIR port 46, however, thecable 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 whenVMC 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 thePDCD 60 is generally referred to as a data carrier device, it has been found, according to the invention, thatPDCD 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® compatibledata transfer port 62. Advantageously, palmtop computers are readily available with such integrateddata 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 acontrol processor 64 and amemory 65, also referred to as a storage. Thecontrol processor 64 communicates across awireless communication channel 70 via IrDA® compatibledata transfer port 62. In other words,PDCD 60 can transfer and exchange software and data with other IrDA® compatible devices viadata transfer port 62. Although it is expected that vending machine operators will prefer to use IrDA® data transferport 62,PDCD 60 may also include one or more cable I/O ports 71 so thatPDCD 60 may communicate with other devices, such as, for example, abase station 74 via aphysical 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 forbase station 74 to communicate and exchange data withPDCD 60 using a wireless interface such as an IrDA® port, in the embodiment shown in Fig. 1,base station 74 communicates withPDCD 60 via astandard 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 orlibraries 80 for storing software, data, and other information relevant tovending machine 12 orPDCD 60. In particular, anoperating software library 82 stores the vending machine operating software for use with one or more class ofvending machine 12. Aconfiguration data library 84 stores the configuration data for one or more class ofvending machine 12. Similarly, asales data library 86 stores sales or other operational data for one or more class ofvending machine 12. Although each database/library 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 ofvending machine 12. Conversely, the data and software may be stored by reference to vending machine locations. Also, while Fig. 2 illustrates thelibraries 80 as existing in databases stored onbase 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 andvending machine 12 without openingvending 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 onbase station 74.Cable port 71 onPDCD 60 is connected to a corresponding port associated withbase 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 nearvending machine window 44 so that theIrDA® port 62 associated withPDCD 60 may communicate with theIR port 46 mounted behindvending machine window 44. Using a keyboard, mouse, or touch/tap screen associated withPDCD 60, the technician initiates a software transfer betweenPDCD 60 andvending 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 byIrDA® port 62 and received atIR 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, andVMC 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 andVMC 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 vendingmachine 12. Stated differently, the present invention allows users to transfer the operating software from vendingmachine 12 to PDCD 60 for subsequent transfer to another vending machine (see reference character 12' in Fig. 3 and associated discussion below) or tobase station 74. In such cases,PDCD 60 is placed nearvending machine window 40. An upload is initiated onPDCD 60 which transmits an appropriate upload initiation message to vendingmachine 12 via IrDA® data port 62,wireless communication channel 70,IR port 46, encoder/decoder 50, andVMC 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 operatingsoftware memory 18 and outputs the operating software toIR port 46 via encoder/decoder 50.PDCD 60 receives the operating software atIrDA® port 62 viawireless communication channel 70. Thecontrol processor 64 associated withPDCD 60 thereafter stores the operating software inmemory storage 65. After the vending machine operating software has been uploaded from vendingmachine 12 to PDCD 60, it may be thereafter transferred tobase 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 vendingmachine 12 shown in Fig. 1. As shown in Figs. 1 and 3, the vending machine operating software residing in operatingsoftware memory 18 onvending 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 inPDCD 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 respectiveoperating 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 operatingsoftware memory 18, as shown in Fig. 1, may also be described in terms of the following steps: loading the vending machine operating software intostorage 65, either manually or frombase station 74 overinterface cable 76; positioningPDCD 60 nearvending machine 12 such thatIrDA® port 62 isadjacent IR port 46; establishing a communication channel betweenIrDA® port 62 andIR port 46 viawireless communication channel 70; and transferring the vending machine operating software fromstorage 65 to operatingsoftware memory 18, viaIrDA® port 62,wireless communication channel 70,IR port 46, encoder/decoder 50, andVMC 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: positioningPDCD 60 nearwindow 40 onvending machine 12 such thatPDCD 60 isadjacent IR port 46; establishing a communication channel betweenIrDA® port 62 andIR 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 machineoperating software memory 18 tostorage 65 associated withPDCD 60 viaVMC 10,encoder decoder 50,IR port 46,wireless communication channel 70, andIrDA® 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 fromPDCD 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: positioningPDCD 60 near additional window 40' on additional vending machine 12' such thatPDCD 60 is adjacent the additional IR port 46'; establishing an additional communication channel betweenIrDA® 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 instorage 65 to the additional vending machine operating software memory 18' associated with the additional vending machine 12' viaIrDA® 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: positioningPDCD 60 nearwindow 40 onvending machine 12 such thatPDCD 60 isadjacent IR port 46; establishing a communication channel betweenIrDA® port 62 andIR port 46 via wireless communication channel 70 (see also reference character UT in Fig. 3); and transferring the vending machine configuration data from theconfiguration data memory 20 tostorage 65 associated withPDCD 60 viaVMC 10,encoder decoder 50,IR port 46,wireless communication channel 70, andIrDA® port 62. After the vending machine configuration data is stored instorage 65, the process for thereafter downloading the data into the additional vending machine 12' may be described in terms of the following steps: positioningPDCD 60 near additional window 40' on vending machine 12' such thatPDCD 60 is adjacent additional IR port 46'; establishing an additional communication channel betweenIrDA® 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 instorage 65 to additional configuration data memory 20' associated with additional vending machine 12'. After the final transfer occurs, the vending machine configuration data stored inconfiguration 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 contactvending 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 vendingmachine 10 intoPDCD 60 for subsequent analysis and debugging.Base station 74 orPDCD 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 betweenvending machines 12, 12', in the same way that the vending machine operating software may be transferred to or from vendingmachine 12, or betweenvending machines 12, 12'. Moreover,control processor 64 ofPDCD 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) ofPDCD 60. Similar software could also run onbase 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) usingPDCD 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 causesVMC 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 thoughPDCD 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, andbase 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 aperson using PDCD 60 may select between an infrared connection usingwireless communication channel 70, or a direct connection usingphysical 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 tovending machine 10 as downloads, and similarly refer to all transfers from vendingmachine 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 fromPDCD 60 tovending 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 onPDCD 60.Base station 74 may also provide additional data manipulation and programming capabilities that are not easily implemented on a handheld unit such asPDCD 60. For example, a computer program executing onbase 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 andPDCD 60, and betweenPDCD 60 andvending machine 12. Other possible integrity checks include embedded codes contained within the data/information exchanged. For example, vendingmachine 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 withPDCD 60, and if an overwrite occurs, the new software that is downloaded to PDCD 60 overwrites the existing software onPDCD 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)
- 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); anda 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).
- 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). - 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).
- 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; andwherein 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).
- 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; anda 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.
- 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.
- 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; andwherein 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.
- 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); andtransferring 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.
- 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'); andtransferring 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').
- 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'); andtransferring 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').
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)
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)
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)
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 |
-
2000
- 2000-10-12 CA CA002323292A patent/CA2323292A1/en not_active Abandoned
- 2000-10-27 EP EP00309499A patent/EP1096408A3/en not_active Withdrawn
- 2000-10-27 JP JP2000328773A patent/JP2001188940A/en active Pending
Patent Citations (4)
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)
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 |