1. Things you need to know about the new ‘Conversations’ PM system:

    a) DO NOT REPLY TO THE NOTIFICATION EMAIL! I get them, not the intended recipient. I get a lot of them and I do not want them! It is just a notification, log into the site and reply from there.

    b) To delete old conversations use the ‘Leave conversation’ option. This is just delete by another name.
    Dismiss Notice

vhf sig gen?

Discussion in 'd.i.y.' started by Jim Audiomisc, Jan 26, 2019.

  1. Jim Audiomisc

    Jim Audiomisc pfm Member

    Wondering if anyone here can advise on this...

    I've become curious about the lack of anyone these days doing measurements on VHF/FM tuners. Tempted to put together my own DIY measurement system. The item I lack is a convenient, FM modulatable, VHF sig gen for the 100MHz region that gives levels of up to a few mV to poke into the tuner. Anyone using something like and can say if what they have might be the right kind of thing for me? Want to avoid over-buying some fancy bells-and-whistles sig gen.

    I have in mind to use one of my existing USB DACs to inject the modulation into the sig gen (adding the stereo modulation and pilot, etc, as part of the input). Then run a USB ADC to collect the tuner's output for analysis.

    The sig gen doesn't need to be ultra-linear as I can calibrate it and 'correct' the modulation I give to it. [1] So I'd just want something cheap and cheerful that does the job with no fuss. But a unit that is already boxed up and essentially working.

    [1] Have a 'FUNCube' SDR so can measure the VHF output directly to check for it being distorted, etc.
  2. MJS

    MJS Trade: Consultant at WH Audio

    I'm working on an FM tuner bench based on a Lime SDR mini and Gnuradio. It's way down my todo list at the moment as I need a more powerful PC than I'm currently using. If you've already modulated the input signal then it's relatively easy to pipe that to the device. But if there's another easy way to do this I'm all ears too.
  3. Jim Audiomisc

    Jim Audiomisc pfm Member

    FWIW The 'easy' bits from my POV are that I can generate whatever input modulation signals I choose, and capture the audio output as I choose.

    Given that I have some decent 192k / 24 bit USB DACs I've already written a simple audio sig gen program (Linux) which I use to produce good audio signal. Since it can cover up to about 90 kHz it can either:

    (a) Modify the program to output stereo multiplexed audio. i.e. add a pilot and the SSB tones to make the L-R added to the L+R baseband. Doing this via the GUI onscreen as for the audio sig gen program.


    (b) generate some 192k wave files of some standard examples of the required multiplex audio and play them out to the DAC feeding the VHF sig gen. In principle this could be one long wave/flac file that contains a sequence of test waveforms, which could then lead to an output sequence recorded using an ADC, then analysed. So if there is a need to often do this, could be entirely automated given the DAC and ADC and a suitable VHF sig gen.

    Hence I don't need a sig gen that specifically includes a stereo encoder because I can do that in software. And then by checking the RF spectrum produced by a given VHF sig get I can pre-distort/correct this to reduce any distortions from an imperfect VHF modulator in the VHF sig gen. I can use my FUNCube to capture the output and assess it. Already written a spectrum analyser/scope that shows the output from the FUNCube or can do scans.

    I can then set up being able to do some of the standard tests on an FM stereo tuner.

    FWIW so far I tend to use the ADC/DACs with an ancient laptop. (xfce Mint)

    If you've not seen them I've put up a number of simple audio/RF programs that run on Linux and RO. Source code provided. But note the FUNCube works via presenting as USB *audio* device for its output so isn't like most SDR dongles.

    My main block is the lack of a fairly simple FM modulatable VHF sig gen. Got all the other bits I'd need, and calibrated them already. :)

    All else failing I can try re-blagging an HP sig gen from my old research group. But if I do, I'll need to give it back later on. Makes more sense to have something smaller cheaper and simpler of my own. But all of this is curiousity driven at present...

    I suspect radio enthusiasts will have simple gens of the kind I'd find useful. But have no idea what they'd be and want to have to avoid biulding an actual VHF sig gen as that would be more work for me that all of the above! 8-] And my soldering is rubbish these days.
    Millennium likes this.
  4. Paul R

    Paul R pfm Member

  5. Arkless Electronics

    Arkless Electronics Trade: Amp design and repairs.

    I mainly use a Marconi Instruments TF2015 which works well but the later 2019 is all bells and whistles and can often be obtained at a fairly reasonable price these days. I also use a Marconi Instruments TF995.... all valve, as used by Leak in the development of the Troughline and about the size of a microwave oven... again it gives excellent results.
  6. Jim Audiomisc

    Jim Audiomisc pfm Member

  7. MJS

    MJS Trade: Consultant at WH Audio

    We used to use a Marconi 2019 as the signal generator for the tuner heads with the accompanying spectrum analyser.

    FM stereo bench testing was done around a Sound Tech 1020A FM Alignment Generator. Originally with a lot of probes and switches so we could quickly change between tests. It was hard wired into Sound Tech's 1700 Distortion measurement system. 3 different scopes, some brick wall filters and a sweep generator completed the set. I converted it all to a computer aided test bench with a Audio Precision AP One. Naim used to quote 3 hours for a full NAT01 line-up. I got it down to 30 minutes.

    Lots of useful Sound Technology info here: http://www.stancurtis.com/soundtech.htm - I'm glad to have used one of the very few 1020'a in the country.
  8. MJS

    MJS Trade: Consultant at WH Audio

    Jim - I'd be interested in any Linux program for generating MPX audio at 192kHz.
  9. davidsrsb

    davidsrsb pfm Member

    I should think that you could use Gnu Octave to calculate the MPX, 192ksps is ample.
    Bypassing analog MPX and generating I and Q is more challenging.
    Last edited: Jan 27, 2019
  10. Jim Audiomisc

    Jim Audiomisc pfm Member

    The quickest and simplest ways for me to do that would be:

    A) To write a 'conversion' program that took an input stereo wave file and generated an output wave file that held the multiplexed version. That then could be played out via a suitable DAC.

    B) program that asked you what input type of signal you want and generated such a file.

    Either could then be run via terminal or launching a command. They just play the resulting file via the DAC in the 'normal way' with the DAC output going to modulate the VHF. I'd tend to use aplay for this if I wasn't sure my usual audio player had been set up to avoid any unintended resampling on the way to the DAC. So doing this automatically could be added to one of the above.

    Would that do? I can write very simple GUIs but they take me a lot longer so I don't usually bother. I tend to just work via files and commands. That said, 'ROX_Tone' (see below) might be bodgeable to output a choice of MPX output using a tweaked form of its current GUI...

    If you look here you can see some examples of what I've written in the past.


    Mix of RO and Linux versions, all with source code in 'C'. The Linux examples are general 'ROX filer' apps so can be run via DnD or a click on a ROX desktop. That gives behaviour similar to aspects of the RO desktop, so convenient for me. But the Linux programs should all also be runnable via terminal / command methods as per usual for Linux.

    TBH given the state of my hands/eyes these days I've got used to finding that writing programs (and articles/webpages) is now far easier for me than soldering!
  11. davidsrsb

    davidsrsb pfm Member

    Do you know any technical details of the MPX, things like gain of the L-R multiplier, is the L-R pre-emphasised, pilot tone level, pilot tone phase relative to the DSBSC?
  12. Jim Audiomisc

    Jim Audiomisc pfm Member


    The pre-emphasis is applied to L and R before they are given to the MPX process.

    The pilot tone level is meant to be about 7% of full mod.

    The 38k suppressed sidecarrier phase was chosen to be equivalent to full-wave rectifying the 19k pilot tone to make decoding easier. (Lot of the old MPX decoders just used this approach to 'double' the pilot for carrier re-injection / switching.)

    These things mean that you do need to scale down L and R to avoid overmodulation. One of the reasons the output SNR takes a hit.

    I'm not sure off-hand if the subcarrier's nominal amplitude should be unity-peak or unity-rms.

    I can check the above as I think I still have the old Mullard mag articles and others on this. I think I used these years ago when I wrote this -


    I also guess the details will be in an old BBC Eng Info, so the challenge there is to find the right document.

    I can probably modify one of the 'modes' of my old WAV_Gen programs to generate MPX. I'll have a look at it when I get a chance. :) Once I can make some test waveforms, someone with a modulatable gen and fast DAC can have a try and let me know. WAV_Gen already does mono or antiphase. So I can use that initially and run the resulting files though an 'MPX encoder' program to get the MPXd version as another wave/flac file for tests.
    davidsrsb likes this.
  13. davidsrsb

    davidsrsb pfm Member

    There must have been an international standard for this or there would have had to be a different version of the good old MC1310 in every country.
    Get the L-R modulation level wrong and your stereo separation vanishes.
  14. Jim Audiomisc

    Jim Audiomisc pfm Member

    Apart from the choice of emphasis, yes, I assume it was all per Zenith/GE. Although IIRC there was leeway on the pilot amplitude. However that's because it only needed to tell the RX the frequency/phase info. Up to the RX to then create and use a subcarrier demod scaling that was correct according to the standard.
  15. Jim Audiomisc

    Jim Audiomisc pfm Member

    Quick search turned up this as an early example of the basic definition of what's needed.


    IIRC more generally, the pilot tone level requirement later on in practice allowed for a range of levels. But I can make that user adjustable anyway. :)

    I've just finished another page of my 'biog' (mentioned on off-topic) so I'll have a look at producing a program / test files over the next few days once I've caught up with a few other things.
  16. MJS

    MJS Trade: Consultant at WH Audio

  17. Jim Audiomisc

    Jim Audiomisc pfm Member

    That's quite interesting. I don't have an RPi as things stand. I'll have a think about it, though.
  18. Arkless Electronics

    Arkless Electronics Trade: Amp design and repairs.

    I'd do it all using analogue and in the same way it was done in the 60's, 70's and 80's personally.... I'll have nothing to do with digital outside of putting a CD into a CD player basically... Yes I'm probably a Luddite!
  19. davidsrsb

    davidsrsb pfm Member

    Some clues here:
    Generating the MPX using maths is going to be much easier with FDM rather than TDM, as no filtering is required and we have ideal linearity and gain in the DSBSC modulator multiplier.
    The MC1310 expects 10% pilot tone, so this must be the nominal.
  20. Jim Audiomisc

    Jim Audiomisc pfm Member

    With luck I can generate some test 'MPX' files in the next day or two. Just need to spent the time hacking a program together that will generate some. I started bodging from an earlier program yesterday. When ready, I'll put up a flac file or two for you/someone to try/examine. It will be 192k/24bit 'stereo' - i.e. a 2-channel file. However it'll have the MPX on one channel and a check signal on the other.

    The check signal is to allow the user to examine if their DAC, etc, needs a 'calibration correction'. The main example here is if the DAC + modulator in the sig gen introduces a phase delay between 19kHz and 38kHz. If it does, that will degrade the MPXd VHF output. But if the delay is known it can be corrected in the file data to bring the pilot and subcarrier back into the correct phase. So a 'reference' in the other channel should be useful. e.g. Have a signal at some point that has pilot on one channel and subcarrier of the other and use a scope to do an XY plot and see if you get a figure-8.

    FWIW Here I can use a Benchmark DAC and ADC, and these have excellent specs, so shouldn't be a problem in these terms. However when doing measurements this is something to be aware of. I can add a user-adjustable correction facility to the final program for people to tweak.

    Anyway, know more later... :)

Share This Page

  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice