element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Open Source Hardware
  • Technologies
  • More
Open Source Hardware
Blog AUDIO MEASURING SYSTEM BASED ON HP 8903A
  • Blog
  • Forum
  • Documents
  • Events
  • Polls
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Open Source Hardware to participate - click to join for free!
  • Share
  • More
  • Cancel
Group Actions
  • Group RSS
  • More
  • Cancel
Engagement
  • Author Author: michaelkellett
  • Date Created: 27 Feb 2022 4:06 PM Date Created
  • Views 7379 views
  • Likes 14 likes
  • Comments 8 comments
  • audio
  • gpib
  • analogue
  • xojo
Related
Recommended

AUDIO MEASURING SYSTEM BASED ON HP 8903A

michaelkellett
michaelkellett
27 Feb 2022

AUDIO MEASURING SYSTEM BASED ON HP 8903A

This is a project that brings together a few long-term plans of mine and (I hope) combines them into a useful system for measuring audio devices.

 

The key components are:

HP 8903A – a mainly analogue Audio Analyser introduced in 1980. HP can describe it in their own words: https://www.hpl.hp.com/hpjournal/pdfs/IssuePDFs/1980-08.pdf

HP 3488A – switch control unit with two with a 44472A VHF switch module. This is optional (and if you don’t have one could be hard to find). It’s useful because it can be used to connect the single channel 8903A to two channel stereo test devices and also provide a switchable loop back for automatic level/frequency calibration.

My own USB to GPIB interface board. You could use a Prologix GPIB-USB controller but I wanted to do my own with modern components and an open architecture.

PC software, written using Xojo (formerly Real Basic), and development on Linux (Mint).

This slightly odd collection of parts is based on what I have available, and the need for a suitable project to progress my planned switch from Windows to Linux. For me Xojo is the most promising multi platform replacement for Microsoft VB6 – so the code should run on Linux (including R Pi), Windows or Mac.

Planned features:

Plots (on screen and exportable .csv or .png)

Amplitude (or gain) / Frequency

Distortion / Frequency (with optional amplitude stepping)

Distortion / Amplitude (with optional frequency stepping)

Mono/stereo

Load control via HP 3488A and an additional interface box.

 

8903A – quick fix

I bought this from an online auction a while ago. It was last calibrated in 2004.

When I got it out recently it was working but the distortion on the generated signal was about 0.04% on power up at 1kHz but increased to about 1% (and much higher at low frequencies) as it warmed up.

As the pictures show the 8903 uses plug in boards neatly arranged in a screened box with some internal dividing screens – this makes it very hard to debug without a set of extender boards. I could have bought some (from USA) but it’s going to cost about the same to make my own and I’ll have some spare bare boards left over.

One of the virtues of older HP stuff is the availability of full service manuals (free or quite cheap) for most instruments. The service manual for the 8903A suggests the levelling (amplitude control system) as the likely cause of high distortion in the signal generator. I found a useful YouTube (https://www.youtube.com/watch?v=VyhUfShTe54) where a guy had fixed his by replacing some capacitors.  The culprits were precision film caps and I decided to  replace C45 (it’s common to all frequencies but the others in the YouTube are not). This was a lucky move and the distortion (measured by looping back) dropped to 0.002% (1kHz, 5V signal).

 image

The oscillator and levelling control board from the 8903A.

image

C45 is the not exactly fitting part on the left of the pcb.

image

The now fixed 8903A doing its stuff in a loop back test

USB to GPIB

Almost all of the instruments made by HP between 1970 and 2010 could be remote controlled via the GPIB (aka HPIB or IEEE-488).

Keysight and National Instruments both supply USB to GPIB interfaces at fairly high prices.

A US company, Prologix, supplies a cheaper device based on an Atmel AVR processor and and FTDI USB to virtual comm port chip. This costs about £184 which seems a little steep for £15 worth of bits. It doesn’t use proper bus driver chips.

There are several designs on the web in various states of open sourceness. Mostly they use AVR or PIC processors. The open-source code I’ve seen is fairly horrible.

So I decided to make my own. It isn’t intended to be a commercial product but is designed with tinkering in mind.

It uses proper bus driver chips, has break out connectors so you connect a logic analyser and uses an ST 32G071 ARM M0 processor clocked at 64MHz. ST have done a deal with Keil ARM to make a free version of the Keil ARM tool-set available for this family of chips so you get access to a good tool-set with effective debugging for the cost of a an ST Link interface pod (under £20).

image

Logic Analyser

In the picture the board is hooked up (via its debug connectors) to a stand alone logic analyser.

You might wonder at this – doesn’t pretty much every scope comes with a built in logic analyser ?

The price of the scope analysers varies – from almost free on some scopes to £500 on a Picoscope 6000 series, £1000 upwards on Keysight and £++++ on Tek and LeCroy.

None of these can decode GPIB without extra purchases and many can’t do it at all.

For the last few years I’ve been using the built in logic analyser on my LeCroy 610Zi, but alas the LeCroy is dead (available cheap if anyone fancies their chances fixing it) – and I don’t have a GPIB decoder for it anyway.

My new best friend in scopes, is the Pico 6424E, which is my everyday scope. Pico decoders are free – but they don’t have a GPIB decoder.

I bought a Zeroplus Logic Cube (LapC 16128) about 8 years ago and it had a lot of bundled decoders. Since then they have bundled all their decoders. I dug it out when I started on the code for the GPIB and it worked a treat. It’s a bit limited with only 16 channels and 128k samples of memory but even so it reminded me how relatively grim the scope based analysers are !

So I bought a new LAPC Pro 32064M – 32 channels, 64M samples and USB3 interface – it absolutely blows the socks off any scope analyser that I’ve  used or heard of. The decoders (more than 100) are bundled. I paid just under £1000 for it  - and I am so regretting all the time I’ve wasted in the last few years debugging FPGA s with a £20k+ scope/logic analyser combo.

 

XOJO

Ever since about 1997 I’ve been writing code for PCs to control things using Visual Basic. Not VB.net but the the original. Microsoft dumped VB6 in favour of the .net horror in about 2000. It’s still the quickest way to write a nice simple GUI type Windows application, such as you might write for this project. But now it’s just too old and too many things have moved on.

For me the big change is that Microsoft are morphing into an organisation that I don’t want deal with  - happy to rant about it for as long as anyone wants to listen but this isn’t the place.

So I want a multi-platform dev tool where I can write code on a Linux machine and expect it to run on Windows or Macs.

Xojo (which sprang from Real Basic) fits the bill – it’s not exactly what I want but it’s as close as I think I’m going to get.

The screenshot shows the beginnings of the Audio measuring prog.

I was looking for  a Hyperterminal type programme to run on Linux to talk to my GPIB interfaces. I tried a few things and didn’t like them – then I found CoolTerm. It does what I want, and too my surprise it’s written in Xojo !

image

Screenshot of the embryo Xojo programme asking the 8903A for the distortion.

NEXT

Lots of code to get the system to work.

I would have posted this in the old Audio or Analogue groups -  I've put it here because I couldn't hink of a group that was more suitable.

The recent headline "Audio Tweaker's Wishlist" was out in Passive Components - which seems a worse fit.

If anyone fancies playing with the GPIB board I can probably be persuaded to part with a board with the (hard to hand solder) processor and FTDI chip fitted.

All comments welcome.

  • Sign in to reply
  • michaelkellett
    michaelkellett 5 months ago in reply to pvdmfarnell

    Which GPIB interface are you using to link your PC to the GPIB bus ?

    MK

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • pvdmfarnell
    pvdmfarnell 5 months ago in reply to michaelkellett

    I will.

    Have you got any usable program or code for me to test?

    -Philip

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • michaelkellett
    michaelkellett 5 months ago in reply to pvdmfarnell

    Still take a look !

    If you don't like it there are other choices.

    Lots of people use Python.

    MK

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • pvdmfarnell
    pvdmfarnell 5 months ago in reply to michaelkellett

    Hi Michael,

    I have only just acquired the unit and I'm learning to use it. I have the GPIB interface as well.

    I am running Linux and I would eventually like to use it to run audio tests on my equipment. Maybe even (semi) automated. 

    I have not looked into the Xojo IDE yet. I was hoping it would be a good environment, but hearing your reply that may not be the case....

    -Philip. 

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • michaelkellett
    michaelkellett 5 months ago in reply to pvdmfarnell

    I have done some work with Xojo but have abandoned it . I just got fed up with the horrible cumbersome language and IDE.

    So the only PC code I have (for 8903) is written in Xojo and runs under Linux (Mint) .

    What kind of thing are you trying to do (and can you run Xojo).

    MK

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
>
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube