Is there an AM/FM receiver that can be hooked up to the raspberry pi and be tuned by the pi? I am building a radio and obviously need a receiver, and I want to be able to tune it through the pi. I am very new to thr raspberry pi, GPIO, and anything else, but it would be great just to be able to tune the receiver by typing a command. Any ideas? Sorry if I didn't phrase my question right.
I can recommend Elonics E4000 TV-tuner. Here are some links:
Last I checked they’d gone out of production, but may have returned due to demand. Many which claim to be E4000 are some realtek nonsense. Use
dmesg to see what you have, or take it apart and look at the chip.
Calculate PPM with
rtl_test -p, after installing the rtlsdr package. You will need this offset in various SDR software packages. PPM will drift as your dongle heats up, so heatsink the E4000 chip, and place it in a grounded, shielded box - even wrapping it in (grounded) alufoil will help. The Pi doesn’t generate as much EMI as a laptop, but you will still see a difference in reception quality if you use a linear 5V supply instead of a 5V SMPS.
For what it’s worth, the RTL2832U is a perfectly fine SDR dongle, it is just a bit less sensitive, and covers less spectrum.
Adafruit sells these at a huge profit, and you are better off getting one from eBay. I use mine with a little dipole, though I had plans to make a yagi for it. Plans...
Note that with a USB repeater cable, you can get much improved range in where you place the dongle. It has no noticeable quality loss.
Update: The default PPM report interval is much too low... I recommend using
rtl_test -p300, which every 5 minutes will yield an averaged value of the PPM offset. An antenna should be connected when calibrating.
There is a product generically described as Software Defined Radio (SDR) and such a product is available from Adafruit.
The description cautions that AM frequencies can be received, but that AM radio signals cannot. The amount of data provided in the above link is just short of overwhelming, as it provides research links to far too many locations to list here.
I purchased some time ago such a product and using a BeagleBone rather than a Pi was able to collect data from passing aircraft equipped with data broadcast systems, typically airliners and other similarly equipped airplanes. The particular package included a web interface with a mapping resource, providing a graphical interpretation of position over ground as well as altitude and airspeed.
If your output frequencies are able to be customized, you would be better able to direct them to the range of frequencies accessible by the SDR, which are listed as signals from 24MHz to 1850MHz.
The device is supported, per the website by Windows, Mac and Linux.
There is a great project that use breakout board SI4703 .