FD2 Test Utility

Use this utility to act like a POS, send test commands to FD2, and inspect the exact response.

Normal workflow: connect, pick a dispenser, send a price or authorization, then check the TX/RX panel for feedback.
Main feedback: the utility shows what it sent, what FD2 returned, and whether the controller acknowledged the command.

1. Connect

Pick protocol

Choose the protocol FD2 expects. For most dispenser testing, use PCC. Use FD Socket only when testing the FD socket text interface.

When in doubt, start with PCC. The main price and authorization examples are PCC-shaped.

Pick connection type
  • Ethernet: enter the controller IP and TCP port.
  • Serial: enter the COM port and serial settings.
Enter endpoint details

For Ethernet, enter the FD2/controller IP and port. The common test port is 9200.

For Serial, enter the COM port and matching baud/parity/data/stop settings.

Click Connect

After a successful connection, the utility shows CONNECTED. If it does not, check protocol, address, port, cabling, and whether FD2 is listening.

Set decimals when needed

Set Price, Amount, and Volume decimals to match the controller or dispenser setup. Common values are price 3, amount 2, and volume 3.

2. Pick a Dispenser

Most actions target one fueling position. Select it before sending price, authorize, stop, resume, totals, or transaction commands.

Use the Dispenser combo

Pick the dispenser number, such as 01 or 02. The Selected: XX label confirms the active target.

3. Send a Price

Use this to verify that FD2 accepts a price write for the selected dispenser and hose.

Pick a hose

Choose Selected Hose in the price bar.

Send one price

Click Send Price. The utility builds the command from the selected protocol, dispenser, hose, and decimal settings.

Send a custom price

Click Custom Price when you need to enter specific credit and cash prices instead of using the utility's generated test prices. The dialog validates the values before sending.

Send several prices

Click All Hoses to send prices for the hose range up to the selected hose.

If FD2 NAKs the command, check that the hose exists and that the price decimal format matches the controller setup.

Clear a price

Click Remove/Disable to send the utility's price-clear style command for the selected hose.

4. Authorize Fueling

Authorization tells FD2 to allow fueling for the selected dispenser, usually with a money preset, volume preset, or fillup.

Open Authorize

Click Authorize. The dialog opens with the current dispenser already selected.

Choose preset type
  • Dollar preset: enter a money amount.
  • Volume preset: enter a volume amount.
  • Fillup: authorize without a normal preset limit.
Choose tier

Select Credit (1) or Cash (2). The utility uses that choice when building the PCC authorization flag.

Optionally lock hose selection

Use Hose to allow one hose. Use Multi to allow a selected group of hoses. Leave it on None for no hose lock.

Send the authorization

Click OK. The utility sends the command and updates the TX/RX panel. While the command is in progress, the Authorize button is disabled to prevent duplicate sends.

A dollar preset in PCC normally builds an A command with a money flag and a scaled money value.

Fillup type options

When Fillup is selected, choose the fillup type that matches the test:

  • Legacy (4): legacy fillup authorization.
  • Cash (5): cash fillup authorization.
  • Credit (6): credit fillup authorization.

5. Read TX/RX Feedback

The TX/RX panel is the main source of truth for what the utility sent and what FD2 returned.

Last Sent / Transmit

Shows the command payload sent by the utility. For PCC, the utility frames it internally, but this box shows the command in a readable form.

Last Response / Receive

Shows the controller response with control bytes expanded:

  • ACK means FD2 accepted the command.
  • NAK means FD2 rejected the command.
  • STX and ETX mark framed PCC payload boundaries.
No response

[no response] means the utility did not receive data before the receive timeout. Check the connection, command format, and whether the remote side closed the socket.

OmegaJr DiagPort

OmegaJr DiagPort mode connects directly to the diagnostic USB serial port and exposes the firmware's compatible legacy PCC pump controls. It does not connect to the normal FD2 TCP service.

Requirements and connection
  1. Use OmegaJr firmware 030.001.033 or newer and connect its diagnostic USB port to the computer.
  2. Select OmegaJr DiagPort. The utility forces Serial mode and lists the available COM ports.
  3. Select the diagnostic COM port. Use Refresh if it was connected after the utility started.
  4. Click Connect. The serial settings are fixed at 57600 baud, 8 data bits, no parity, and 1 stop bit.
Automatic connection verification

The utility sends a dedicated FD2TestUtility/OmegaJr negotiation frame that cannot be produced by clicking an ordinary diagnostic-menu option. It requires the firmware's unique negotiation acknowledgment, PCC-ready response, and framed OmegaJr identity before enabling controls. No terminal work or security-code typing is required.

The same handshake runs immediately before every OmegaJr PCC command. If firmware inactivity returned the port to its default menu, the handshake safely re-enters PCC first. If the firmware state cannot be verified, the selected command is not sent and the utility closes the connection rather than retrying against an uncertain mode.

If connection fails, confirm the firmware version, choose the correct diagnostic COM port, and make sure another program does not have the port open.

Firmware diagnostics

Click OmegaJr Diagnostics to open the same public firmware menu shown to a normal terminal connection. The handshake does not grant diagnostic privilege. The utility turns every option in the current firmware menu into a labeled button.

Select Security code and submit the numeric response to enter privileged mode through the normal firmware menu flow. Only then do dispenser configuration, reset, log tests and maintenance, UID, and memory-dump options appear. Nested menus and predefined dispenser-brand controls also appear as buttons. Use Back / ESC to move up a menu. Closing the window resumes PCC service automatically and clears diagnostic privilege.

Commands are accepted only in their matching connection state. Buttons from an earlier screen are invalidated as soon as an option is selected, connection-management keys are withheld from the diagnostics window, and modifying actions require a second confirmation click.

Free-form terminal input is not available. The only typed field is the memory-dump address, and it accepts at most eight hexadecimal digits after being explicitly enabled.

Supported operations

After identity verification, the utility enables the applicable main-window actions for price writes, authorization, stop, resume, payout/sale data, totals, status, system version, and compatible custom PCC commands.

Command familyAccepted OmegaJr form
Identity/status/resetK, F1, FE, and G
Pump controlTwo-digit dispenser C stop and D resume commands
AuthorizationLegacy 17-character numeric A commands using flags 0, 1, 2, 3, 4, or 9
Sale dataBddR read or BddC payout/clear, where dd is the dispenser
Totals/blend/priceLegacy I totals, H blend, and J read/write/enable/disable forms
Error queueEC, ER, EW, EE, and ES

Unsupported commands are blocked locally and shown in TX/RX instead of being sent. Extended ! commands, deauthorize, license/files, reader/other-device actions, IFSF commands, and price-sign commands are unavailable in this mode.

Disconnect cleanly

Disconnect, changing away from OmegaJr mode, or closing the utility safely ends the diagnostic session and closes the COM port.

PCC Price Sign Commands

Select PCC, connect to FD2, and click Price Sign Test. These commands target a configured FD2 PRICESIGN channel, not the selected fuel dispenser.

Set Price (*H)

Enter the two-digit channel, sign line/level, PPU decimal count, and human-readable price. The dialog scales and rounds the price to an eight-digit integer, then sends:

*Hccldpppppppp

  • cc: configured price-sign channel, 01-99.
  • l: line or level, 1-8.
  • d: decimal places, 0-5.
  • pppppppp: zero-padded scaled price.

For example, channel 01, line 1, three decimals, and price 3.499 produces *H011300003499. An ACK means FD2 accepted and queued the value; the configured driver still performs its own line range, scaling, delivery, and read-back checks.

Set Intensity (*I)

Choose Manual or Automatic and enter an intensity from 0 through 100. The command is *Iccmiii, where m is M or A and iii is the zero-padded intensity. Example: *I01M050.

Display control is currently supported by the Generic and Daktronics drivers. Other configured sign drivers reject *I with NAK.

Read Delivery Status (*J)

*Jcc returns an eight-character framed status payload. The dialog decodes it into channel, communication, price delivery, dim mode, and intensity.

FieldValues
Communication1 = OK; 2 = down
Price delivery0 = not sent; 1 = current; 2 = in progress; 3 = failed
Dim modeM = manual; A = automatic; ? = unavailable/other
IntensityThree-digit value from 000 through 100

Use status after a set command to distinguish acceptance by FD2 from successful delivery to the physical sign.

Driver-specific limits

The dialog offers the PCC-wide range of lines 1-8 and decimals 0-5. The configured driver may support a smaller line range or a fixed wire precision, so a syntactically valid command can still receive NAK. Current drivers include Bever, Daktronics, Everbrite, Generic, Novyc, Passport-compatible, PWM, Skyline, and VeriFone-compatible.

Close closes the Price Sign Test window without disconnecting the main utility.

Action Reference

This list covers the visible action buttons on the main window. If a button is currently a placeholder, the help says so directly.

Button What it does
AuthorizeOpens the Authorize dialog and sends a PCC or FD socket authorization. The button is disabled while the send is in progress.
DeauthorizeRemoves authorization for the selected dispenser. PCC sends an N command; FD socket sends DEAUTHORIZE.
StopSends a stop command for the selected dispenser. PCC sends C; FD socket sends STOP.
ResumeSends a resume command for the selected dispenser. PCC sends D; FD socket sends RESUME.
PayoutRequests payout behavior. PCC sends a B payout-style command; FD socket currently sends a fillup-style authorization request.
Get TotalsRequests totals/meters for the selected dispenser and selected hose.
Get Trans. DataRequests current sale/transaction data for the selected dispenser.
Assign Grade MapPlaceholder in this utility. It currently reports that the feature is not implemented.
Release ReservationPlaceholder in this utility. It currently reports that the feature is not implemented.
ReservePlaceholder in this utility. It currently reports that the feature is not implemented.
Reader CommandsPlaceholder in this utility. It currently reports that the feature is not implemented.
Other DevicesPlaceholder in this utility. It currently reports that the feature is not implemented.
Read Tank ConfigurationPlaceholder in this utility. It currently reports that the feature is not implemented.
Write Tank ConfigurationPlaceholder in this utility. It currently reports that the feature is not implemented.
Read Grade Unit PricePlaceholder in this utility. It currently reports that the feature is not implemented.
Transport safety

The utility serializes command sends through the shared transport so two commands do not write/read over the same socket at the same time. Reconnects close the previous socket before opening a new one.

6. Read FD2 Files

Use Read Files to request configuration, logs, JSON, database, reader, license, or PIE data files.

Open Read Files

Click Read Files.

Pick a save folder

Choose where downloaded files should be saved. If no folder is selected, the utility may prompt later.

Pick what to read
  • Read config.xml (*CR): request controller configuration.
  • Logs dir (*VL): request logs.
  • JSON dir (*VJ): request JSON files.
  • DB dir (*VD): request database files.
  • Reader dir (*VR): request reader files.
  • License dir (*VC): request license files.
  • PIE data dir (*VP): request PIE data files.
Watch feedback

The window shows the response, and Copy to main TX/RX can copy the result into the main panel.

Clear or close

Clear empties the response box in the Read Files window. Close closes the window without changing the main connection.

7. Send a Custom Command

Use Custom Command when no dedicated button exists for the test you need.

Choose a template or type a command

Select a message template and click Apply, or type a command manually.

  • A010000100000000 - PCC-style authorization example.
  • *VL - log-file request example.
Choose output options

Use Show raw when you need visible control bytes. Use Copy to main TX/RX when you want the main window to show the same exchange.

Send

Click Send and read the response before sending another command.

Close

Close closes the Custom Command window. It does not disconnect the main utility.

Global Buttons

These shortcuts send common controller-level commands.

  • F1: request basic controller status.
  • FE: request status. Turn on Extended to send the extended status variant.
  • Lic: request license or controller information when supported.
  • System Versions: request version information. For PCC, Connect also requests this automatically after connecting.
  • Custom Command: open the manual command window.
  • Read Files: open the file/log helper window.
  • IFSF Commands: placeholder in this utility. It currently reports that IFSF commands are not ported.
  • Help / About: opens this local help file.