USB-PTS Installation Instructions and SpinPTS API Reference

This document covers the USB-PTS device installation procedures and the SpinPTS API Package.

The SpinPTS API is an easy to use C programming interface to the USB-PTS.

To view a complete list of functions, see the spinpts.h page.

The latest version of spinpts can be downloaded form

For more information about our latest products, please visit our website at:

Installation Procedures

The SpinPTS API Package contains a simplified C programming interface to easily control your USB-PTS device as well as various example programs in using the API effectively. The SpinPTS API Package comes pre-compiled, and no further installation procedures are needed. In Windows, any program compiled with the SpinPTS API will need to have the "spinpts.dll" in the same directory as the executable. For information about how to compile programs with the SpinPTS API package please see the Compilation section.

Driver Installation

Windows Driver Installation

This section describes the installation procedure for Windows machines. These drivers can be used with Windows 98/ME/NT/2000/XP. The instructions and screenshots described below are for Windows XP, however the procedure is virtually identical for other versions of Windows. Installing the drivers
1. If you have not already done so, download the latest bundle of drivers and software from and unzip this file to a location on your computer. Please keep track of this location, as you will need it in Step 5. The location used in this example is "C:\USB-PTS\".
2. Connect your USB-PTS device to the computer with a USB cable.
3. The "Found New Hardware" wizard will then launch and state that it has detected new hardware. You do not need to search online for drivers. Choose "No, not this time", and click "Next".
4. In the next step, the wizard should detect the USB-PTS device. The device name will show up as "USB-PTS". Choose "Install from a list or specific location", and click "Next"
For some revisions of the board, the device may show up as FTDI FT8U2XX Device. In this case replace USB-PTS device with FTDI FT8U2XX Device for the remainder of the instructions.
5. Choose "Search for the best driver in these locations". Make sure that the "Include this location in the search:" is enabled and then enter the location that you unzipped the files to in Step 1 by either typing it or clicking "Browse". Click "Next".
6. Windows will then install the drivers for the device. This may take a few minutes. During this process, a window may appear pertaining to Windows Logo testing. You may safely choose to "Continue Anyway".
7. A window will appear to indicate that the driver installation has finished. If Windows asks you to reboot your computer, please do so.
8. After installation has finished, you can check to make sure the device has been installed properly by looking in the Device Manager (instructions). Your SpinCore product will be listed under the Universal Serial Bus controllers category. This step is optional.


Other Operating Systems

Currently the SpinPTS API only supports Windows platforms. For help compiling and using this program on other operating systems, please contact SpinCore Technologies on our website at .

Controlling your USB-PTS Device

The SpinPTS API Package comes with a variety of precompiled example programs that can be used to control your PTS device. The example programs can be found the the examples directory. For information on what arguments the example program takes, execute the program without any parameters.

Controlling the PTS160 using the spinpts160 example program

The spinpts160 example program takes a single argument corresponding to the frequency you wish to set your PTS to. The program should display "PTS Operation Successful." If it is not successful, an error message will be displayed.


Controlling the PTS300 using the spinpts300 example program

The spinpts300 example program takes two arguments: the first argument corresponds to the frequency you wish to set your PTS to, the second argument is the phase (0,90,180,270). The program should display "PTS Operation Successful." If it is not successful, an error message will be displayed.


Controlling your device with the TCL/TK Graphical Interface

The USB-PTS TCL/TK Graphical Interface is available to easily control your PTS without dealing with the command line. In order for the TCL/TK interface to work, the example executables must be available in the directory along with the TCL/TK script.


Creating a Program to Control a Different PTS Device

If you would like to use programs such as the spinpts160 or spinpts300 to control a device we currently do not have an example program for, it is easy to modify one of the existing programs to support your PTS!
1. Find out if your PTS supports phase control. If your PTS supports phase control, make a copy of the spinpts300.c and rename it to spinptsXXX.c where XXX corresponds to your PTS model.
2. Modify the spinptsXXX.c file to support your device as follows:
Modified spinpts300.c
                #include <stdio.h>
                #include <ctype.h>
                #include "spinpts.h"
                int spinptsXXX(double frequency, int phase)     //Where XXX corresponds to your PTS model.
                        PTSDevice PTSXXX;
                        PTSXXX.mfreq = XXX;
                        PTSXXX.allowPhase = 1;                  //This model supports phase.
                        PTSXXX.fullRange10MHz = 0;              //Only for the PTS160.
                        return set_pts(frequency, phase, &PTSXXX);

                int main(int argc, char* argv[])
                        //Change any occurence of spinptsXXX to the proper value.
3. Compile the new spinptsXXX.c with your favorite compiler. For compilation help, see the "Compilation Help" section of this manual.

Compilation Help

Any program that will use the SpinPTS API functions must include the "spinpts.h" header file at the top of the source file. The program must also be linked to the "spinpts.dll" file. Both of these files can be found in the dll directory.

Configuring your Compiler

To link your program to the "spinpts.dll" file, you will need to add the spinpts.dll to the linker options of your compiler. You will also need to specify the "..\SpinPTS\dll\" path as an include path for C/C++ headers and libraries.

Configuring the Bloodshed Dev-C++ Compiler

The Bloodshed Dev-C++ IDE is an opensource freeware C/C++ IDE available for download at . The Dev-C++ IDE can be downloaded with the MingW C/C++ compiler preconfigured.
1. Open the "Compiler Options" by going to menu Tools->Compiler Options.
2. Add "-lspinpts" to the linker command line as follows:
3. Add the "..\SpinPTS\dll\" directory to the search path for libraries.
4. Add the "..\SpinPTS\dll" directory to the search path for C includes.
5. To test the configuration, open one of the example programs in the "examples" directory and goto the menu Execute->Compile. The program should compile without any errors or warnings.

Contact Us

If you have any questions or comments, please contact us at:
Generated on Tue Feb 26 11:51:26 2008 for SpinPTS API by  doxygen 1.5.2