Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

DIY stereo FM transmitter

Status
Not open for further replies.

mtwieg

Advanced Member level 6
Advanced Member level 6
Joined
Jan 20, 2011
Messages
3,910
Helped
1,311
Reputation
2,628
Reaction score
1,437
Trophy points
1,393
Visit site
Activity points
30,048
Recently I decided I wanted to make my own stereo FM transmitter without relying on monolithic ICs such as BH1417, SI471X, etc (just to keep it interesting). I plan on using a PLL with a very low closed loop BW (<20Hz) in order to lock the channel center frequency precisely, and injecting the stereo modulated audio into the VCO tuning node. So far I'm looking at using the ADF4360-8 as my PLL/VCO. Is this a reasonable approach? I presume that my distortion will be dominated by the linearity of my VCO, but isn't this always the case?

Also in general, how close does my center frequency have to be to the standard station frequencies (100.0MHz, 100.2MHz, etc)? Is 10ppm enough? And how accurate does my pilot frequency have to be? Also what sort of relative signal strength should the pilot have? And how should I do the 38KHz mixing of the stereo signals?

Thanks in advance.
 

That's quite a good design although I'm not sure hard switching the channels like that would give best channel separation. The LF VCO to do the tuning should give good frequency stability. Almost all FM receivers there is AFC to 'pull' the receiver to the transmitter frequency so absolute tuing accuracy isn't important for home use. There are two kinds of stereo decoder, ones that recover and use the transmited pilot and ones that use it to lock a PLL. Both are relatively imune to small errors in pilot frequency so a few 10s of Hz either way won't make much difference.

Brian.
 
  • Like
Reactions: mtwieg

    mtwieg

    Points: 2
    Helpful Answer Positive Rating
Hi all,
mtweig - I was motivated to do just the same a few years back, and approached it in exactly the same way you've proposed!

I posted a couple of schematics a while ago here: https://www.edaboard.com/threads/242244/#post1037412
I started with a discrete VCO then added a PLL with a tiny loop bandwidth around it to lock it and allow me to push its frequency with the audio signal. I found the resulting audio quality was more than acceptable (well, to my trashy Eurodance desensitised ears at any rate ;) I then attempted to extend it to being a stereo transmitter as cheaply as possible. The second schematic of the above post shows the result.. I derived the 19/38 kHz tone/mixer oscillator frequencies from the PIC's clock and used a JFET as a linear resistive 'mixer'. While the resulting stereo separation could be improved, it certainly works OK and might provide some inspiration.

As Brian said, I found domestic broadcast receivers extremely forgiving to carrier/pilot frequency errors too.

Cheers :)
 
  • Like
Reactions: mtwieg

    mtwieg

    Points: 2
    Helpful Answer Positive Rating
This can give you an idea how to do it..

Nice schematic, though I wasn't going to go as far as building discrete VCOs and RF amps myself...

I'm having a little trouble working out the signal chain, since the pins of the TBA120 aren't labled. Is that acting as the PFD, or is the dual gate FET?

- - - Updated - - -

That's quite a good design although I'm not sure hard switching the channels like that would give best channel separation.
I was thinking the same thing. I assumed you would need aggressive filtering to eliminate harmonic images of the L-R component from contaminating other channels. Or do mixing with a more linear element (dual gate FET?).
The LF VCO to do the tuning should give good frequency stability. Almost all FM receivers there is AFC to 'pull' the receiver to the transmitter frequency so absolute tuing accuracy isn't important for home use. There are two kinds of stereo decoder, ones that recover and use the transmited pilot and ones that use it to lock a PLL. Both are relatively imune to small errors in pilot frequency so a few 10s of Hz either way won't make much difference.
Okay so I should probably derive the pilot from a derived Xtal oscillator, not a 555.

- - - Updated - - -

What do you say about this ??
**broken link removed**
Already mentioned that one in my OP, I'm trying to keep things interesting by avoiding using monolithic ICs.
 

Cough... please don't use a 555 as the pilot generator..... or even worse the PLL reference :shock:

The TBA120 is normally used as an FM discriminator but in this case it is being used only as a phase detector. The MOSFET mixes the fixed 81MHz with the output of the top VCO and the difference is compared to the low (tunable) VCO. It's a 'mix down' rather than 'divide by' PLL circuit.

If i were you I would do something about those 741s and use low noise amplifiers instead. Might be worth considering adding a resistor in series with pin 14 of the 4060 to help it drive the resonant load and improve the 'Q' of the LC filter.

Brian.
 
  • Like
Reactions: mtwieg

    mtwieg

    Points: 2
    Helpful Answer Positive Rating
Hi all,
mtweig - I was motivated to do just the same a few years back, and approached it in exactly the same way you've proposed!

I posted a couple of schematics a while ago here: https://www.edaboard.com/threads/242244/#post1037412
I started with a discrete VCO then added a PLL with a tiny loop bandwidth around it to lock it and allow me to push its frequency with the audio signal. I found the resulting audio quality was more than acceptable (well, to my trashy Eurodance desensitised ears at any rate ;) I then attempted to extend it to being a stereo transmitter as cheaply as possible. The second schematic of the above post shows the result.. I derived the 19/38 kHz tone/mixer oscillator frequencies from the PIC's clock and used a JFET as a linear resistive 'mixer'. While the resulting stereo separation could be improved, it certainly works OK and might provide some inspiration.

As Brian said, I found domestic broadcast receivers extremely forgiving to carrier/pilot frequency errors too.

Cheers :)
This is really cool thanks. I assume the "subcarrier amplitude" pot was for compensating for the unknown conversion gain of the JFET mixer? How well did that work? Did you do any measurements of distortion and L/R separation?

- - - Updated - - -

Cough... please don't use a 555 as the pilot generator..... or even worse the PLL reference :shock:
Why would using the PLL reference be a problem, so long as it can be divided down to the proper pilot frequency?

The TBA120 is normally used as an FM discriminator but in this case it is being used only as a phase detector. The MOSFET mixes the fixed 81MHz with the output of the top VCO and the difference is compared to the low (tunable) VCO. It's a 'mix down' rather than 'divide by' PLL circuit.
So if I understand correctly, the bottom VCO is at some low IF frequency, and the actual output center frequency is defined by fIF+81MHz? I guess I can see how using a lower frequency VCO would give lower carrier drift, but it's a pretty complex method. Clever though.
If i were you I would do something about those 741s and use low noise amplifiers instead. Might be worth considering adding a resistor in series with pin 14 of the 4060 to help it drive the resonant load and improve the 'Q' of the LC filter.
Yeah I intend to use modern components. I want to use this thing in my car, so it should be somewhat compact.

I've purchased some components to play around with, along with a SI4713 (just to compare with). I'll probably just start out with the FM modulator part and then worry about the stereo part later. One thing I'm wondering is if my FM bandwidth with the PLL will be limited by my PFD frequency. I know there are rules of thumb for keeping your PLL loop bandwidth below fPFD by a factor of ten or so, but that doesn't apply to the bandwidth of my baseband injected signal, does it?
 

The 555 comment was in reference to post #6. As the 555 is relatively unstable component at low frequencies, imagine multiplying the drift by x100 or so! Stay with the crystals.

You shouldn't have any problem with the PLL bandwidth, the audio frequency deviation is quite small compared to the carrier frequency. There is a trade-off though, if you make the PLL more responsive (shorter time constant) the tuning will be more responsive but you may start to lose bass notes in the audio. This is because the PLL will fight back against the modulation. Being FM it will see the deviation as being an error in carrier frequency and compensate by producing an opposing tuning voltage.

Brian.
 

The 555 comment was in reference to post #6. As the 555 is relatively unstable component at low frequencies, imagine multiplying the drift by x100 or so! Stay with the crystals.
Ah I misunderstood. Obviously a 555 is a poor choice, but I thought you meant using the Xtal PLL reference for the pilot as well would be bad. My mistake.
You shouldn't have any problem with the PLL bandwidth, the audio frequency deviation is quite small compared to the carrier frequency. There is a trade-off though, if you make the PLL more responsive (shorter time constant) the tuning will be more responsive but you may start to lose bass notes in the audio. This is because the PLL will fight back against the modulation. Being FM it will see the deviation as being an error in carrier frequency and compensate by producing an opposing tuning voltage.

Brian.
Right, I don't want to make my closed loop bandwidth too large otherwise it will filter off my audio low end. But is there any relationship between my fPFD and my modulation bandwidth I should follow? Will I be okay with ~40KHz of modulation bandwidth if my fPFD is just 200KHz?
 

I assume the "subcarrier amplitude" pot was for compensating for the unknown conversion gain of the JFET mixer? How well did that work? Did you do any measurements of distortion and L/R separation?

Yup - correct. I hadn't simulated any aspect of the design, so I opted for the experimental approach of 'make everything you're not sure of adjustable' ;)
The same reasoning applied to the pilot phase & amplitude pots too, since I didn't have an appreciation of the relative sensitivity of the receiver's stereo demodulator to these parameters. Fortunately all the receivers I tested were pretty forgiving of variations, but I can't recall ever determining absolute limits/bounds/values.

Similarly, I never quantified the L/R separation or distortion beyond simply feeding an audio signal into one channel or the other and listening to what appeared (on each output channel) at the receiver. (Subjectively) I found it entirely adequate for programme music though!

For comparison purposes - my fPFD = 20 kHz and the corner frequency of the PLL loop filter [C3/C35/C12/R23/R34] was ~20Hz (from memory) to avoid attenuating the bass components of the audio as mentioned earlier. The lock time in response to a commanded frequency step was somewhere in the range few 10's-100's ms which was of no consequence since I'd only intended single frequency operation. I used this reference: **broken link removed** to design the loop filter (and every PLL I've ever made since) and I've found this recipe consistently works :)
 

What's a good antenna design for covering a decent bandwidth (maybe 10MHz) without sacrificing efficiency? I could easily make a loop antenna with great Q and efficiency, but it would have a very narrow bandwidth... any recommendations for compact antenna designs? I can etch my own FR4 PCBs.

Also having trouble finding available crystals with the right frequency to be divided down to 19KHz/38KHz. Closest I can come up with is 19.44MHz, which could give me 18.984/37.969KHz. Should that be close enough?
 

That is probably close enough but you can choose different crystals frequencies by selecting different outputs from the 4060. As long as you take the output from divider stages 2 apart it will work as it is and if it helps, you should be able to take them from adjacent outputs if you simply invert the signal controlling one or the other 4016 switch. (hint: you can wire an unused section of the 4016 as an inverter)

Brian.
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top