Wavetek 178 instrument control software

This is a Microsoft Windows program to control a Wavetek programmable waveform synthesizer.

This program is provided free of charge. It has no warranty of any kind. Use at you own risk.

For use with the Prologix GPIB adapter. It will ONLY work with Prologix USB to GPIB and compatible adapters.
It should work with any USB to GPIB adapter that supports the Prologix command set.

It has been tested with the following adapters:

dalton.ax Elektor Prologix clone.
NOTE:7/18 My Dalton adapter is not currently working.
New versions have not been tested with it.

Emanuele Girlando's Arduino based adapter.


Click here to download the software. WAVE178.zip. (09-09-2018)

Unzip the archive and run WAVE178.exe

Click here for older versions.

The button to the right of each text box shows the status of the data typed into the box.

Green check: Data is valid and has been sent to the instrument.
Red exclamation: Data is invalid
Orange arrow: data has been changed but not sent to the instrument. Press the button to send or the update all settings button to send all data to the instrument.

The text entry boxes support E-notation. You can type in a frequency of 50KHz as 50000, 50E3, 500E2 etc.

Change config default to send data from program to instrument.
Fix: range checks for input text boxes not working.
Fix: config file data from program or instrument has wrong default value.

Updated for use with the Emanuele Girlando Arduino GPIB adapter.

It provides full speed operation (time delays removed).

Emanuele Girlando has updated the code provided on his site.
If you downloaded the code after 09-05-2018 the following changes are already in place.

This version requires modifications to two lines of the Emanuele Girlando Arduino code.

Download and Edit the GPIP6.1.ino file from the Emanuele Girlando Arduino GPIB adapter site.

Edit line 168 in the arduino code and change it from:
flush_serial();// ensure nothing is pending just before prompting the user..
if (verbose) flush_serial();// ensure nothing is pending just before prompting the user..

Next, edit line 229 and change it from:
// if (isesc) goto loadchar;
if (isesc) goto loadchar;
You will change this line from A comment to active code.

then, edit line 230 and change it from:
if (isesc) { Serial.println("CR or LF inserted");goto loadchar; }
// if (isesc) { Serial.println("CR or LF inserted");goto loadchar; }
This will disable this line and make it a comment.

Finally, save the updated file and then write it into your Arduino.

I have now added the ability to change the Prologix adapter version ID string.
This data is returned by the Prologix adapter ++ver command. This is needed because I use the version string
to identify the Prologix adapter. Some compatible adapters return a different response to the ++ver command.
Choose Options from the program settings menu. Enter all or part of the version string returned by your adapter into
the Prologix version ID textbox. To make this change permanent, choose file | Save settings and save the new configuration.
You can also change the Prologix baud rate. This is only needed for some prologix clones.


I have found that some USB to serial port adapters can cause the auto COM port
search to run very slowly. If you have problems with slow program startup,
you can set the COM port configuration to manual and enter the port for
your GPIB adapter into the Serial COM port textbox. If you plug the USB
adapter into a different USB port, the com port will probably change.

I have also found that bluetooth adapters can cause a crash during auto com port detection.

This crash happens when a bluetooth serial COM port device is connected.
I have two of these adapters. A generic and a name brand adapter.
Both of my bluetooth adapters use the CSR network stack.
I believe that the CSR software is the cause of the the problem.
if you have one of these adapters you should use the manual COM port setting.
Below are pictures of the problem bluetooth adapters.

CSR_BT 001s.jpg

CSR_BT 002s.jpg

You can manually select the GPIB address and the COM port.
You may need to use manual if you have multiple identical instruments or multiple GPIB adapters attached.
Auto GPIB will find the first Wavetek 178 (lowest GPIB address) on the bus.
Auto COM will find the first (Lowest COM port) Prologix adapter on the PC.

The following Prologix commands are used:

++read eoi

Advanced configuration settings may only be changed by
editing the configuration file. Use this at your own risk.
The configuration file is named WAVE178.cfg and is located in
the \cfg folder. To restore the default configuration, just
erase the file. It will be created on the next program run.

Click here for descriptions of the configuration file items.

Questions or comments? Email me:

Visit my home page.