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
RoadTests & Reviews
  • Products
  • More
RoadTests & Reviews
Blog MXO4 Road Test – A digital filter meets the Frequency Response Analyser
  • Blog
  • RoadTest Forum
  • Documents
  • RoadTests
  • Reviews
  • Polls
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join RoadTests & Reviews to participate - click to join for free!
  • Share
  • More
  • Cancel
  • Author Author: michaelkellett
  • Date Created: 8 Apr 2023 12:03 PM Date Created
  • Views 1478 views
  • Likes 13 likes
  • Comments 3 comments
Related
Recommended
  • Digital Filter
  • fpga
  • MXO 4 series oscilloscope

MXO4 Road Test – A digital filter meets the Frequency Response Analyser

michaelkellett
michaelkellett
8 Apr 2023

MXO4 Road Test – A digital filter meets the Frequency Response Analyser

I’ve been following some of the audio projects on E14. A combination of the blogs from genebren (Multi-Voice Synthesizer) and javagoza (SystemVerilog Study Notes) prompted me to try my hand at implementing a dynamically tuneable digital state variable filter in an FPGA.

First step was a bit of research – most people seem to use the Chamberlin realization of a state variable filter in the digital domain but I found a paper that describes a better way: Improving the Chamberlin Digital State Variable Filter, Victor Lazzarini and Joseph Timoney, Maynooth University, Maynooth, Ireland.

You don’t need to read the papers or understand them to follow the rest of this blog !

The idea of the filter is to make a tuneable filter which gives low-pass, high-pass and band-pass outputs at the same time. The centre frequency and Q of the filter are adjustable in real time. Such filters are the core of subtractive synthesizers like Moog and its many derivatives.

My first step was to test out the filter idea in MATLAB. (If anyone would like the MATLAB files then please ask – I won’t print them here because I get the impression that MATLAB is a bit of a minority interest on E14.)

I followed that up by implementing the filter on an ST32H743 micro. This part clocks at 400MHz and has a 2x 16 bit ADCs and 12 bit DACs. This is quite good enough to prove that my filter maths is working OK. I'm happy to post the filter code for the ST processor if anyone would like it.

image

I designed this board a while ago as part of a stand alone Frequency Response Analyser project. I can’t remember why the board is called H7SYNTH rather than H7FRA , but it had nothing to do with music synths. The board has all the features needed to get analogue data into the STMH&’s ADC ports and out from its DACs.

I used the MXO4 in FRA mode to look at the frequency response of the filter:

image

For these experiments the filter has been set to f = 30Hz and Q = 5. The sampling rate for this filter is 48kHz . Everything looks good over a dynamic range of more than 60dB. It would be nice to be able to suppress the phase plot since it isn’t doing anything useful here.

I want to plot responses of the filters at different settings and compare them. To do that I need to save the data from the FRA.

My scope was running version 1.2.3.2 of the code at this time.

I tried saving the data from the Save/Recall menu and it didn’t work.

image

Clicking "save" got this:

image

It doesn't look as if FRA data can be saved for exporting. I thought this would be a good opportunity to try the Rohde and Schwarz help desk. I filled in the from on the web and did the required signing up etc. Support is one of things you expect when paying for a "Big Name" piece of test gear like the MXO4 so I've shown the complete interaction with the R & S support desk below:

R & S response to enquiry submitted on officlal web form (they didn't send a copy of the initial request).

thank you for your request.

To proceed with your question, we need some more information.

What devise are you using?

And what dada and format do you want to export?

Looking forward to her from you.

I said:

Using MXO4 with FRA (K36) option.

Want to export data from table in .csv format

Scope screen capture attached.

image

R & S said:

please use the CSV export  function of the MXO:
image

 I said:

We don't seem to be getting through to each other here.

Let's start at the beginning.

I have an MXO4 with the MXO4-PK1 application pack installed.

I'm running the Frequency Response Analyser (FRA) application.

I run the FRA and get a screen like this:

(This was followed by several screenshots and comments)

 

They said:

thanks for detailed steps what you had done.

Did you see this with latest firmware version 1.2.3.2 for MXO ?
In case you have an older version please do an update to this version.

You will find the latest firmware version for MXO at the link below:

https://www.rohde-schwarz.com/firmware/mxo4/

If you see this missing function also please let me know.

 

I said:

The scope is already running 1.2.3.2

 image

Can't you just ask the people who wrote the FRA application code how to save data from it ?

4 days later they said:

from our developer I got this answer:
Saving FRA results will be possible with the next FW release, which will be available for download next week.

We can add you to our mailing list for MXO to be informed about firmware / software / driver and application notes.

Please let me know if you interesting about that.

And on Thursday 6th April the new firmware was on the Rohde and Schawarz website.

So I downloaded firmware version 1.3.2.0

 

New Firmware

Mostly I’ll talk about the latest Firmware (that’s what R & S call it) elsewhere. In this blog I’ll just talk about what it does to the FRA.

 

The good news is that you can save FRA data.

I set up the filter experiment again, so the results are slightly different.

First, the basic FRA measurement:

image

The Save/Recall menu has a new FRA option:

image

You can download the data easily onto a PC connected to the same Ethernet as the MXO4. You get a CSV file. I re-plotted the data in Excel:

image

You can get a file with just the markers in it:

image

 

This is a big improvement, but it would be nice to see a bit more control over the saved data and its formatting.

The release notes for this software version mention: “Easier selection of close-proximity elements in a diagram”

I mentioned in my first blog about the FRA that you can’t select markers near the left-hand edge of the screen.

I put a marker in the danger zone and tried to select it:

image

Sometimes this nice hexagon pad display pops up when you click on a marker, but sometimes it doesn’t.  It’s not clear to me why. If you click and the hexagons don’t appear, then dragging the mouse will move the trace up and down, even if the cursor was actually in the marker triangle.

But sometimes you get the hexagons. I clicked on the "Marker FRA M1" pad -  the Multi-Use control knob lit up – so I twiddled it and Marker 2 could be moved about on the screen.

Yes, that’s right, when the marker is un-selectable, you can use the hex pads to select the wrong marker.

So, one step forward, 1 step back.

 

Comparing with other scopes

I’m pretty sure that the nasty response above 700Hz isn’t really true. So I tested the filter with the free FRA application running with a  Pico 6042E scope (using x10 probes). It took a little fiddling with settings to get this response:

image

I also tried a much lower cost Pico 5444 scope (with x1 probes) with very similar results:

image

The FRA app on the Picos copes a little better at higher frequencies than the R & S. It is important to be aware that the signal being measured at 1kHz is about 73dB below the maximum output of the DAC. It’s a 12 bit DAC so the signal is about 0.5bits (pk) – the nasty traces above 1kHz are not significant. Unlike the Pico FRA application the R & S FRA allows you to see a scope view of the signals as well – making it easier to tell when the signal is distorted or too small.

 

Summary

The older firmware (26th January 2023 couldn’t save FRA data at all.)

The latest firmware(5th April 2023) can save FRA data.

The latest firmware has a go at improving the selection of markers and has introduced a new bug along the way.

The FRA in its current form is a useful tool but still has some rough edges.

 

MK

  • Sign in to reply
  • strb
    strb over 2 years ago in reply to michaelkellett

    Awesome!

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • michaelkellett
    michaelkellett over 2 years ago in reply to strb

    I have to finish the MXO4 RoadTest soon or I'll be talked about on E14 as one of those undesireables who doesn't do their Road Tests on time.

    But in the next couple of weeks I'll post a blog about the state variable filter with the MATLAB, c and eventually RTL (in VHDL) code for an Effinix FPGA.

    MK

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • strb
    strb over 2 years ago

    Nice!
    I'm actually interested in the Matlab code. I don't have a Matlab license but I'm using scilab which should have a translator. Would be great to study what you have done, thank you!

    And happy Easter! Slight smile

    • 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