Introduction: FM Data Receiver Module for Micro-controllers
With an Op Amp and a few components a cheap FM digital receiver can be made.
- $1 FM receiver
- Dual Comparator (LM2903)
- Switching Diode (1N4148)
- Potentiometer (22k)
- 150pF Cap
- 10kΩ resistor
- 4.7kΩ resistor
- 4 pin header
Step 1: The Circuit
It is basically an envelope detector on the non-inverting and a variable voltage on the inverting input on the first comparator. Then the output is buffered and inverted by the second comparator. It is simple but took some development. I tried op amps and Schmitt triggers, but they let too much noise though, or did not have the power necessary to drive logic. An envelope to Schmitt works great, but it would require a step up transformer. (too big for my liking, and 13 grams)
Step 2: Assembly
The pin-out is not crucial I went
Step 3: Tuning
The most important thing is that the FM receiver will NOT stay locked on a solid tone. I did find out it will lock to a DTMF tone. So to get the MCU to tune its self Pulse the DTMF in a know pattern and program it to stop on it. (solid DTMF is the easiest to program for)
I kept the reset button for a manual override of sorts.
Again I suggest using a relay as opposed to transistor. It will add weight and cost but relieve some headache.(I will keep trying to improve the transistor though)
I used an FM receiver antenna, it would not reliably pick up my broadcast without it. Hooks to the inner of the 3.5mm jack leads.
Step 4: Specs
The main reason I wanted to use an FM receiver over two ways is size and weight. The audio transformer alone weighs 13g alone!
This board is 8.7g(.3oz) and 58.3mm(2.3in) tall with header 32.5mm(1.3in) wide 35.8(1.4in) with knob and only 13.3mm(.5in) thick.
I wanted it light and small for flying RC applications.
Range is dependent on transmitter power. With a store bought FM transmitter I got 10m easy.
Step 5: Trouble-Shooting and Expansion
The circuit is relatively free of trouble. Once it is tuned though it does not like to be touched. I strongly suggest a reed relay not a NPN transistor. It will tune it but not 100% of the time.(works better with large antenna for some reason)
I included two alternate circuits for demodulating digital data over audio.(if the comparator gives you to much trouble)
The best test instrument to see if it is tuning is an 8Ω speaker with a 2k2Ω resistor on it. It allows you to hear the station and does not inhibit the circuit. It may require adjustment of the pot when adding or removing it.(also causes circuit to become untuned). LEDs will work but are misleading with audio frequency noise(it blinks but you can not see it)
If it is longer range or a transceiver you are after use a pair of two way radios(not cheap walkie-talkies unless you would like to modify the 6PST switch for MCU control). The same dual comparator circuit should work with 2-ways(for receive only), I used a transformer and Schmitt. I want to make a converter module, but it would not be self contained.(and would be bulky)