Patent Description:
Various types of fuel dispensers are used for dispensing fuel to customers. Some form of remote dispenser controller is traditionally used for controlling the actual dispensing of fuel by the fuel dispensers. The dispenser controller is often on the same premises as the fuel dispensers and coupled to a store interface unit so that a site attendant can monitor and control particular fueling dispensers from a building at the site (e.g., a gas station or other store). The dispenser controller sends data signals to the fuel dispensers providing various information and commands thereto. The information traditionally includes price, preset amounts of fuel to dispense, and authorization to dispense fuel. The fuel dispensers likewise send data signals to the dispenser controller, traditionally including pump number, pump status, dispensed fuel volume, and sale value. Document <CIT> discloses a fuel dispenser control console which is interfaced to a cash register for down-loading sales information to the register when the sale is paid out on the console.

Communications to a fuel dispenser's fuel controller and payment terminal are traditionally based on which vendor is associated with the fuel controller and payment terminal since different vendors' fuel controllers and payment terminals require information and commands to be provided thereto in a particular format for proper functionality. During the course of a fuel dispenser's lifetime, the payment terminal may need to be replaced for any of a variety of reasons, such as to accommodate new methods of payment or to meet newly implemented security regulations. Traditionally, the new payment terminal must be associated with the same vendor as the vendor associated with the fuel controller. This is because store interface units traditionally recognize a single vendor for a single fuel dispenser and provide information and commands for the fuel dispenser to the dispenser controller in the format appropriate for that vendor. However, a new payment terminal meeting the needs of the fuel dispenser's owner may not be available from the same vendor as the fuel controller, thereby preventing the payment terminal from being replaced unless the entire fuel dispenser is replaced, which is an expensive and time-consuming process, or the payment terminal is replaced with a payment terminal that does not fully satisfy the fuel dispenser owner's needs but must be used to match the vendor of the fuel controller.

Accordingly, there remains a need for improved fuel dispenser communication.

In general, fuel dispenser communication is provided.

The fuel controller translator is further configured to read a conversion table stored in a memory of the fuel controller translator, determine, based on the conversion table, the second format that corresponds to a type of fuel controller that will receive the translated command, and generate the translated command based on the determined second format.

The fuel controller translator can also be configured receive a second command in the second format from the fuel controller, translate the second command into a first format compatible with the external device, and transmit translated second command in the first format to the external device.

The fuel controller translator can yet be further configured to combine a plurality of commands in the first format into a single command in the second format, where the translated command is the single command.

The fuel controller translator can also be configured to expand a command in the first format into commands in the second format, where the translated command includes the commands in the second format.

The external source can be a point-of-sale system configured to control operation of a component of a fuel dispenser.

In an interrelated aspect, a fuel dispenser can include a housing. The housing includes a pump compartment with fuel dispensing components disposed therein, an electronics compartment, and a translator board. The pump compartment has a fuel controller disposed within the pump compartment and configured to control dispensing of fuel by the fuel dispensing components. The electronics compartment includes a payment terminal configured to process payment for fuel dispensed by the fuel dispensing components. The translator board is connected by a first wire to an external source and connected by a second wire to the fuel controller. The fuel dispenser is configured to perform operations including, receive a command from an external source, where the command can have a first format, translate the command into a second format compatible with the fuel controller, and transmitting the translated command in the second format to the fuel controller.

This invention will be more fully understood from the following detailed description taken in conjunction with the accompanying drawings, in which:.

As used herein, the terms "data signals" and "commands" can be used interchangeably to be not only commands that describe or directly cause a specific hardware or software operation, but can also include any type of data which may or may not be used to cause or initiate a hardware or software operation. Examples of commands that may directly cause an operation can be: initiate the dispensing of fuel, display a value on a visual display, terminate the dispensing of fuel, adjust a flow rate for a fuel pump, etc. Examples of commands that may not directly cause an operation can be: specify an amount of fuel to be pumped, query or receive an open/closed status of a pump or valve, a time or timestamp, etc. Thus the term "commands" can refer to any amount or type of data transmitted between the systems described herein.

To enable operation of a fuel dispenser, fueling and payment data signals can be transmitted between a forecourt controller and the fuel dispenser. However, when components of a fuel dispenser are replaced or upgraded, the components may require commands in a different format than those sent by the forecourt controller. In some cases, a fuel controller (which can control the mechanical operation of the fuel pump) can require commands in a different format than, for example, payment commands required by a payment terminal in a fuel dispenser. In such a case, a fuel controller translator can be utilized to translate the commands transmitted between the forecourt controller and the fuel dispenser. For example, where the forecourt controller transmits commands that are compatible with the payment terminal, but not with the fuel controller, the fuel controller translator can translate the commands received from the forecourt controller into a format compatible with the fuel controller. Conversely, the fuel controller translator can translate commands received from the fuel controller into a format that is compatible with the forecourt controller.

<FIG> is a diagram illustrating one embodiment of a fuel dispenser <NUM>. The fuel dispenser <NUM> includes an electronics compartment <NUM> and a pump compartment <NUM>. The electronics compartment <NUM> has therein electronics for facilitating payment for fuel and for facilitating the dispensing of the fuel. The electronics include, for example, a fuel controller configured to control dispensing of the fuel from the pump compartment, a communication unit configured to electronically communicate wired and/or wirelessly, a display <NUM> configured to show information (e.g., media content, payment information, etc.) thereon, a memory configured to store data therein, and a payment terminal (e.g., a card reader, etc.) configured to process customer payment. Only the display <NUM> is shown in <FIG>. Similar components can be located on the other side of the electronics compartment <NUM>. The fuel dispenser <NUM> can be configured for mobile payment instead of or in addition to payment through the payment terminal and hence need not include the payment terminal.

The pump compartment <NUM> has therein a pump configured to pump fuel from a fuel tank or other reservoir and has therein a fuel meter configured to monitor fuel flow. The pump compartment <NUM> can include other elements to facilitate fuel dispensing, such as valves, a vapor recovery system, etc. The pump compartment <NUM> is isolated from the electronics compartment <NUM> within the fuel dispenser <NUM> to facilitate safety, security, and/or maintenance, as will be appreciated by a person skilled in the art. Fuel is thus not allowed to flow from the pump compartment <NUM> to the electronics compartment <NUM> and instead flows from the pump compartment <NUM> through hoses <NUM> to nozzles <NUM> for dispensing. As will be appreciated by a person skilled in the art, the nozzles <NUM> are each configured to dispense fuel from the fuel dispenser <NUM> as pumped therefrom by the pump.

The fuel dispenser <NUM> is configured to be connected to the fuel tank or other reservoir containing fuel. When filling up the tank of a motor vehicle, the fuel is pumped from the tank or reservoir by the pump located in the pump compartment <NUM> and to a nozzle <NUM> via a fuel pipe (not shown) and a fuel hose <NUM>. When each fuel hose <NUM> is not in use, the fuel hose <NUM> hangs along the fuel dispenser <NUM>, and its associated nozzle <NUM> is seated in a nozzle boot <NUM>. The illustrated fuel dispenser <NUM> includes four hoses <NUM> and four nozzles <NUM> on one side of the dispenser <NUM> and four hoses <NUM> and four nozzles <NUM> on the other side of the dispenser <NUM>, but as will be appreciated by a person skilled in the art, the fuel dispenser <NUM> can include any number of hoses <NUM> and nozzles <NUM>. A person skilled in the art will also appreciate that the fuel dispenser <NUM> can have various other configurations.

<FIG> is a diagram illustrating one implementation of a fuel controller translator <NUM> in accordance with certain aspects of the present disclosure. In some implementations, a fueling establishment can include a forecourt controller <NUM> located within a forecourt connection hub <NUM>. The forecourt connection hub <NUM> can be an area located in or around a building, such as a store. The forecourt can include any area between the forecourt controller <NUM> and a fuel dispenser <NUM>. For example, the forecourt can be where motorists bring their vehicles to be fueled, an intervening building area, or the like. The forecourt controller <NUM> can act to receive payment information, e.g., from a point-of-sale terminal, such as a cash register, as well as to monitor fuel dispensers, control fuel dispenser operation, or the like. The forecourt controller <NUM> can also send and receive commands to and from the fuel dispenser <NUM>.

Any of the communication methods described herein can be wired or wireless, for example, Local-Area-Network (LAN), Wireless LAN (WLAN), Ethernet, Bluetooth, cellular, or the like. The communication can also be performed over an RS485 or US Current Loop connection. The forecourt controller <NUM> can be in communication with any number of fuel dispensers <NUM> to control the dispensing of fuel and the receiving of returned data or commands from the fuel dispensers <NUM>.

In some cases, the format of commands used by the fuel controller <NUM> and the payment terminal <NUM> can be different. A fuel controller translator <NUM> can thus be provided for translating the data. For example, where a forecourt controller <NUM> and a payment terminal <NUM> use data having a first format, and a fuel controller <NUM> uses data having a different second format, the fuel controller translator <NUM> can translate the data sent to and received from the fuel controller <NUM>. In particular, data in the second format received from the fuel controller <NUM> can be translated into the first format and sent to the forecourt controller <NUM>, and data in the first format received from the forecourt controller <NUM> can be translated into the second format and sent to the fuel controller <NUM>. Once a command has been received by the fuel controller <NUM>, the fuel dispenser <NUM> can dispense the fuel as instructed by the forecourt controller <NUM>.

While <FIG> illustrates the fuel controller translator <NUM> located within the forecourt connection hub <NUM>, a person skilled in the art will appreciate that the fuel controller translator <NUM> can be located anywhere, including within the fuel dispenser <NUM>, as long as it is configured to translate signals transmitted between the forecourt controller <NUM> and the fuel dispenser <NUM>.

The translation of commands from the first format to the second format (or vice versa) can include translating and expanding a single element of data or command to multiple elements of data or commands (a <NUM> to N operation). In other implementations, the reverse can occur where the fuel controller translator <NUM> receives a number of commands or data inputs and translates and combines them to a single data element or command (an N to <NUM> operation). The translation can be performed by a central processing unit (CPU) that can be embedded in a translator board that is part of the fuel controller translator <NUM>. In other implementations, the fuel controller translator <NUM> can be in a computer chip that can be installed in a circuit board.

When a command in the first format is received by the fuel controller translator <NUM>, the fuel controller translator <NUM> can determine which format to translate the command into, and how many translated commands will be equivalent to the received command. There can be a conversion table, for example, a lookup table, database, or other conversion data that provides the basis for the translation. The conversion table can be stored in a memory of the fuel controller translator <NUM>, on an external computing system, or the like. The conversion table can be read by the fuel controller translator <NUM> to determine the second format that corresponds to a type of fuel controller <NUM> that will receive the translated command. The second format can be vendor/model specific, and there can be entries in the conversion table that correspond to different vendor/models of the fuel controller <NUM> or payment terminal <NUM>. The conversion table can then also be read to retrieve the appropriate command(s), in the second format compatible with the fuel controller <NUM>, and transmit those translated commands to the fuel controller <NUM>.

For N to <NUM> translation, the fuel controller translator <NUM> can include a buffer for an array to store incoming commands until the required number of commands is received for combination into the single command. For example, when the fuel controller translator <NUM> receives a partial command, the conversion table can identify this as a partial command. The fuel controller translator <NUM> can wait until other partial commands have been received which together can be combined into a single command. That single command can then be transmitted by the fuel controller translator <NUM>.

In general, the fuel controller translator <NUM> can be configured to translate commands between two different formats for interpretation between any components of the fuel dispenser <NUM> and components in the forecourt or point-of-service location. For example, the "second format" can be the required format for the fuel controller <NUM>, the payment terminal <NUM>, or for some other component of the fuel dispenser <NUM>, such as the fuel pump, a computer display, a shutoff valve, or the like. In some implementations, the fuel controller translator <NUM> can be in communication with more than one component, and there can be more than one type of second format. Accordingly, the fuel controller translator <NUM> can have translation software for each type of second format corresponding to the different types of fuel controllers <NUM>, payment terminals <NUM>, or other components. In some implementations, the fuel controller translator <NUM> software can be installed, for example, during the production process, when the fuel control translator <NUM> is installed on-site, as part of an update, or the like.

In some implementations, the command can be, for example, a hex code or strings, octets, binary code, analog electrical pulses, or the like that can be interpreted by the fuel controller <NUM> as a command. The fuel command translator can store commands according to vendor, model, or the like. In some implementations, the fuel control translator can have a single, or otherwise limited number of formats that it can translate. Accordingly, there can be multiple fuel controller translators <NUM> that can be concurrently installed to handle additional types of translation.

The translation can be bi-directional to handle, for example a response from the fuel controller <NUM>. For example, the fuel controller translator <NUM> can translate any data received from the fuel controller <NUM> (in the second format) to the first format. This translated data can then be transmitted to the forecourt controller <NUM>.

Also, while some examples herein describe translating fuel controller <NUM> commands, other types of commands, either instead of or in addition to the fuel controller <NUM> commands, can be translated. For example, the fuel controller translator <NUM> can be configured to translate payment terminal <NUM> commands, or commands between any component of the fuel dispenser <NUM> and the forecourt connection hub <NUM>. As such, the adjective "fuel controller" should not necessarily be considered a limiting feature to exclude other uses of the fuel controller translator <NUM> or other types of translators installed for the purposes described herein.

Also, the fuel controller translator <NUM> can receive commands that do not require translation. For example, the forecourt controller <NUM> can be configured to transmit/receive commands in a first format. The payment terminal <NUM> can be configured to transmit/receive commands also in the first format. The fuel controller <NUM>, on the other hand, can be configured to transmit/receive commands in the second format. Such a configuration can be referred to as a "hybrid" fuel dispenser. This can occur with the electronics compartment, or portions thereof, are upgraded or replaced using components provided by a different vender than the remainder of the fuel dispenser. Here, when the fuel controller translator <NUM> receives commands for the payment terminal <NUM> in the first format, no translation may be needed. The fuel controller translator <NUM> can then transmit the original commands (in the first format) to the payment terminal <NUM>.

In some implementations, the commands can include an identifier indicating what format they are in. The identifier can be read by the fuel controller translator <NUM> to determine if translation is needed.

When a fueling establishment includes multiple fuel dispensers <NUM>, multiple fuel controller translators can be installed in one or more housings. The housings can be located, for example, in the forecourt connection hub, in the forecourt, in a building or other structure, on the fueling dispensers, or at an off-site location.

<FIG> is a process flow diagram illustrating a method in accordance with certain aspects of the present disclosure.

At <NUM>, the POS computer, or other system at the POS, can send a POS command to the forecourt controller.

At <NUM>, the forecourt controller <NUM> can generate, in the first format, data or commands based on the commands received from the POS computer. The generated commands can be transmitted to the fuel controller translator <NUM>.

At <NUM>, the fuel controller translator <NUM> can translate the received commands, or a portion thereof, in the first format to commands in a second format. The translated commands can then be transmitted by the fuel controller translator <NUM> to the fuel controller <NUM>.

At <NUM>, the fuel controller <NUM> can execute the received commands to operate the fuel dispenser <NUM>.

The fuel controller <NUM> can generate responses (herein also referred to as second commands to distinguish from first commands received by the fuel controller <NUM>) based on the commands executed at <NUM>. The responses can be, for example, a fuel controller command response and/or a fuel controller data response. The fuel controller command response can be a command response from a component of the fuel dispenser <NUM> that reflects a status of the component or result of the executed command.

At <NUM>, when there is a need to return a fuel controller data response, the fuel controller data response can be generated for transmission to the fuel controller translator <NUM>. A fuel controller data response can be any data that is not a direct result of the execution of fuel controller commands.

The second commands can be in the second format. Generation of the second command can be in response to the received command (a fuel controller command response) or can be independent of the received commands or fuel dispenser operation (a fuel controller data response). The second command can then be transmitted by the fuel controller <NUM> to the fuel controller translator <NUM>.

At <NUM>, the fuel controller translator <NUM> can translate the second format fuel controller data response, or a portion thereof, from the second format to the first format.

At <NUM>, the fuel controller translator <NUM> can translate the second format fuel controller command response, or a portion thereof, from the second format to the first format. The fuel controller translator <NUM> can transmit the translated second command (in the first format) to the forecourt controller <NUM>. Similarly, the translated fuel controller data responses (if any) can be transmitted to the forecourt controller <NUM>.

At <NUM>, the forecourt controller <NUM> can generate commands or responses for the POS computer based on the translated second command received from the fuel controller translator <NUM>.

At <NUM>, the POS computer can process the fuel controller response. The processing can include, for example, displaying a current status of the fuel controller <NUM> or payment terminal <NUM>, displaying how much fuel has been pumped, or the like.

<FIG> is a process flow diagram illustrating another method in accordance with certain aspects of the present disclosure.

At <NUM>, a command can be received from an external source, the command having a first format.

At <NUM>, the command can be translated into a second format compatible with a fuel controller <NUM>.

At <NUM>, the translated command can be transmitted in the second format to a fuel controller <NUM>.

These computer programs, which can also be referred to programs, software, software applications, applications, components, or code, include machine instructions for a programmable processor, and can be implemented in a high-level procedural language, an object-oriented programming language, a functional programming language, a logical programming language, and/or in assembly/machine language.

To provide for interaction with a user, one or more aspects or features of the subject matter described herein can be implemented on a computer having a display device, such as for example a cathode ray tube (CRT) or a liquid crystal display (LCD) or a light emitting diode (LED) monitor for displaying information to the user and a keyboard and a pointing device, such as for example a mouse or a trackball, by which the user may provide input to the computer. For example, feedback provided to the user can be any form of sensory feedback, such as for example visual feedback, auditory feedback, or tactile feedback; and input from the user may be received in any form, including, but not limited to, acoustic, speech, or tactile input. Other possible input devices include, but are not limited to, touch screens or other touch-sensitive devices such as single or multi-point resistive or capacitive trackpads, voice recognition hardware and software, optical scanners, optical pointers, digital image capture devices and associated interpretation software, and the like.

In the descriptions above and in the claims, phrases such as "at least one of" or "one or more of' may occur followed by a conjunctive list of elements or features.

Claim 1:
A fuel controller translator (<NUM>), comprising:
a translator board having at least one programmable processor, the translator board connected by a first wire to an external source and connected by a second wire to a fuel controller (<NUM>) in a fuel dispenser (<NUM>); and
a non-transient machine-readable medium storing instructions which, when executed by the at least one programmable processor, configure the fuel controller translator to perform operations comprising:
receiving a command from an external source, the command having a first format;
reading a conversion table stored in a memory of the fuel controller translator, the conversion table including entries corresponding to different types of the fuel controller;
determining a second format for the command based on one of the entries that corresponds to a type of the fuel controller that is connected by the second wire to the translator board;
generating, by the fuel controller translator, the translated command based on the determined second format; and
transmitting the command in the second format to the fuel controller.