Audio Precision System Sys1 USB Interface

Hi all 🙂

I have an Audio Precision System One with DSP. I want to build an USB interface for it to extend its life with newer operating systems than XP.

I know that the newer Audio Precision Systems have an USB interface option.
Unfortunately Sys1 and older Sys2 are not supported.

The APIB is described in detail in the Sys1 service manual.
The idea is to use an Cypress FX2 to convert the APIB Bus to USB.
The Audio Precision Software needs to be patched to support the USB interface. The AP Software itself will run on Win8 (without the driver).
Would be nice if the hole circuit can be built into the connector housing.
(The attached picture shows that the print dimensions should be smaller than
25 x 35 mm)

It would be great if the USB interface can support the older System Two (Sys2322 ...) too.

Do you know if the Sys2 interface is fully compatible with Sys1?

Sys1 uses 74LS245 with 2n2 capacitors at the output as bus drivers.
Would be great if anyone can find out the chips in the Sys2 or in the modern Audio Precison USB interface for Sys2722 🙂 ( i have only acess to Sys1)!

I am especially interested if the newer sys2 use the rather big 2n2 capacitors at the output too. They reduce the data rate strongly.

Are you interested in such an interface? Any help is welcome 🙂

Thanks,
Udo

Update April 2016:

Meanwhile the USB adapter development has been finished 🙂
Some photos of the adapter can be seen on page 2 -
actually the hardware was the fastest part!

The adapter works with APWIN 2.24 and supports S1 and S2 up to Cascade
and any peripheral which is supported by APWIN 2.24.

Supported operating systems are Windows XP, Vista, 7, 8 and 10.

The greatest delays were because of missing hardware for testing.
During development tests my S1 shows various signs of dying slowly.
This was caused by connector contact problems.
John helped me to repair my S1, and now it is working like new 🙂
Michael and Duke helped a lot with finding remaining errors in S2 and
in optimizing the speed. Evan did a lot work on reverse engineering the bus timing.
Many thanks!

Anyone who needs an adapter: please send an email
with your shipping address to apusb@krebelder.at

Thx,
Udo
 

Attachments

  • APUSB1.jpg
    APUSB1.jpg
    87.6 KB · Views: 3,312
Last edited:
I have bought the USB Adapter from A-P. I got it for the new A-P, though. I wonder if it will work as hardware directly or with some software rewrite? Have you asked A-P if it will work? But it isnt cheap and might still be better to make one for the many people who have or would like to have an earlier A-P connected to a newer PC.

THx-RNMarsh
 
Last edited:
Hello,

The AP USB Adapter does not work with APWIN software before 2.24 because it needs a special driver.

If the APBUS is still hardware compatible their USB Adapter can be used as hardware base.
But i have not asked AP directly.

Anyway the AP USB Adapter is very expensive. And i would like a smaller hardware which fits into the housing of the cable.

The hardware layout is finished to 90%. It would be great if someone can find the time to look inside a modern AP interface card or the AP USB adapter.
I still need to know the values of the output network and the driver chips of a Sys2.

At the moment i am using 74LVC245 and 74LVC240 bus drivers with a 3.3 Volt supply.
Perhaps it is better to stay with 74LS245 or a similar 5V bus driver?

Thanks - Udo
 
I tried to open the A-P USB interface box.... it wont open.... they have glued a screw on the front and on the back so they cannot be removed. [Guess it is repaired on a replacement basis]. Sorry.

I would go with 5v logic due to the USB and age of the A-P.


THx-RNMarsh
 
Thanks for trying to help!

The 74LVC logic is 5V tolerant but can only output 3.3 Volt. This is not so bad as Low Power Schottky (74LS) logic goes only up to 3.5 Volt (even with 5Volt supply).

The only minor problem is, that the APIB has 4.7kOhm pullups on each line. This causes a small current flowing into the 3.3 Volt supply..

The disadvantage of the 74LS Logic is the low threshold (typically 1Volt). This causes problems with reflections on the bus. AP has done a neat trick: They filter each input line with 390 Ohm and 470pF! The rise time on each output is reduced by the 2.2nF too.
So they can safely ignore proper bus termination techniques.

Unfortunately the minimum USB supply voltage is 4.4 volt. This is too low for 74LS logic..
To be on the safe side with 5Volt logic, Advanced Low Power Schottky or a modern bipolar logic like 74ABT should be used. They have wider voltage tolerances.
But this logic families have stronger drivers than the LS logic. The rise time is getting smaller and this may cause problems with reflections...

So at the moment i feel that the LVC logic is the best choice. LVC logic has 1.5 volt threshold and a little hysteresis at the input. This helps a lot to overcome reflection problems.

I hope that it will work as planned 🙂 Next week i am on holiday in Kroatien.
When i am back, i will order the PCB and solder the thing together.
The firmware will be the next part to work on.

Thanks - Udo
 
For what its worth I may be in for two boards when it makes sense.

I thought the APIB was originally a kludge of a printer parallel port that morphed. When they first launched the AP system one there were not may options. GPIB was expensive and complex to implement, Serial RS232 was slow and generic parallel ports while common were fast but only the wrong way. A USB adapter that could hook into the AP ONE software would be a real boon.

The USB Vbuss would probably work fine in practice for this. It rarely gets to 4.5V and is specified at 4.75V normally. In my testing any load that would pull it below 4.75 will usually trigger power shutdown on the USB interface. If you use quality cables and powered hubs or direct connection to a host there should be no issue. The next challenge is to trick APWin into talking to the USB instead of the card.
 
Thanks for trying to help!

The 74LVC logic is 5V tolerant but can only output 3.3 Volt.

Some parts ov LVC logic can operate from 5 Volt power supply (SN74LVC1G125, for example). But - it cannot accept 3.3v input signal in this case because minimum high-level input voltage is 0.7*Vcc (3.5v with 5v Vcc)


So at the moment i feel that the LVC logic is the best choice. LVC logic has 1.5 volt threshold and a little hysteresis at the input. This helps a lot to overcome reflection problems.

Better to use LV logic, for example - SN74LV1TO4 can be used for 1.8<->5, 3.3<->5 level conversion.
 
I had a lot of work and the project stalled. But now the first PCB is ready and i can start working on the firmware.

The PCB has two layers and it was rather difficult to put everything in the small housing.
The DB25 connector is solderd on the leftmost edge. Its a Norcomp part.

The resistor and capacitors are 0603 SMD with the exception of the 1uF power supply caps. No elkos or tantals are used.
Caps and resistors are quality parts from Murata and Yageo (former Philips).

The left side shows the top side with the line drivers and the EEPROM in the middle. The 24 MHz crystal is rightmost.

On the bottom left are the USB cable pads and the USB ESD protection IC (from NXP).

The right side shows the bottom with the FX2LP USB 2.0 interface IC and the voltage regulator at the bottom (LP2951 with Reset output).

Each data outputs has 2n2 to ground and 22 Ohm in series for damping bus reflexions.

Because of availability and size reasons i stay with the LVC parts for now (74LVCH245APW and 74LVC240APW).

Thanks for your interest,
Udo
 

Attachments

  • BildPCB.jpg
    BildPCB.jpg
    181.2 KB · Views: 1,346
Hello,

Yesterday i found time to solder the components on the PCB and to build the hardware together.
At first i thought that the connector may be clumpy but after looking at the result it looks very good.
I attached some pictures.
The best think is: When i connected the cable for the first time to the laptop a windows dialog popped up to install the driver!
This will be the next work to do.

Cheers,
Udo
 

Attachments

  • Kabel2_Small.jpg
    Kabel2_Small.jpg
    73.2 KB · Views: 1,210
  • InnenFX2_small.jpg
    InnenFX2_small.jpg
    74.2 KB · Views: 1,193
  • InnenTreiber_small.jpg
    InnenTreiber_small.jpg
    77.7 KB · Views: 1,250
Their USB box is not too bad🙂 But having one simple interface cable is somewhat more elegant...

I have taken a closer look to the AP software. From the driver strings i suspect that AP uses the FX2 USB chip too.

Do you have a preference regarding the length of the USB cable? At first i thought that 3m is good, but after having seen 3m i now think that 2m are ok.
It is still possible to extend the cable with an AP interface cable.

Thx - Udo
 
Hi again,

I want to share new information about Sys2.

Evan has done great work in analysing the AP Sys2 bus interface🙂
I think it is ok to share this information here as AP is not
supporting Sys2 any longer.

In Sys2 the bus is not terminated by 2.2 nF as in Sys1.
Instead Sys2 uses basically 50 ohm source termination.
The Sys2 termination is better with longer bus cables.
The data rate can be higher too.

The logic type has changed to 5 Volt 74ACT245 for the data and
74HCT125 for the status lines.
With the help of discrete resistors the data receivers have some hysteresis added.

The strobe lines EA, EW, ER go to 74HC14 schnitt triggers.
Not 74HCT version - so the use of 3.3 Volt LVC Logic may not be a safe bet in Sys2.

A forum member (Altor?) suggested 74 LV logic, which is a modern well tempered 5 Volt logic.
At first i thought that the 8mA drive capability is too low, but the bus drivers come with 16mA.
74LV logic is indeed a good choice as the AP bus is not high speed.

The AP USB interface uses the same FX2 chip as this design,
but in a larger TQFP package.

I want to support S1 and S2 with one USB interace...
This is possible by combining source termination with 2.2nF slew rate
control.

Up to now a first simple communication with FX2 over USB is running and i am
working on the next steps.

Thx - Udo
 

Attachments

  • Sys2_ifm1_1_Evan.jpg
    Sys2_ifm1_1_Evan.jpg
    602.7 KB · Views: 919
Their USB box is not too bad🙂 But having one simple interface cable is somewhat more elegant...

I have taken a closer look to the AP software. From the driver strings i suspect that AP uses the FX2 USB chip too.

Do you have a preference regarding the length of the USB cable? At first i thought that 3m is good, but after having seen 3m i now think that 2m are ok.
It is still possible to extend the cable with an AP interface cable.

Thx - Udo

I think 2m should be fine if the PC and HW are near each other. -RNM
 
How could I miss that thread?

USB I/F for Sys1 & Sys2 would be absolutely great. I have a Sys2 (2322) with PCMCIA I/F which is a dying species (I tried to account for that by buying a few older laptops with PCMCIA as long as they're still around, to have spare -- and needed it already, the first laptop's PCMCIA slot went dead recently). USB will continue to be available for a longer time, I hope. I'm volunteering as a beta tester.

Biggest problem, in five years or so, will be finding old computers/laptops with XP, though. ApWin2.24 refuses to run the hardware on anything later than XP.

Isn't implementing the driver the hardest part of it? I have no clue about windows driver coding but would imagine it's hard to 'fake' an existing driver.
 
KSTR: Thanks for your offer to test the thing.
RNMarsh: 2m is now the standard cable length.

Actually i do not fake an existing driver. I use the standard windows USB driver (already preinstalled in Win8).
The AP low level interface functions are in the windows DLL called apio.dll. This low level functions call the driver.
I am rewriting the low level communication functions (about a dozen relative simple functions like ap_write_byte(), ap_reset(), ap_read_triple(), ap_write_triple(),...) and replace the original DLL with my version...

The newer AP2700 software uses the same interface functions (well, almost)....
it may be possible to patch AP2700 so that it will even work with an older S2 or S1.
This assumes that the basic analog commands have not changed..
The newer DSP stuff will probably not work in AP2700.
 
Do I need Win8 to run it, then?
I'm very reluctant to use any other OS than XP because I always felt that Win7 started to treat a former power user like a complete idiot and Win8 perfected that (feels like using a Mac, that is).