Created this category, because a lot is to say about the VMA11.
I got the board working, it is a great receiver and amp. Very reasonable quality, and no noise from the processor. Very nice if you want to build your own featured FM radio.
The example program has settings for USA / Europe mixed up. Ideally, you should correct them in the library.
Depending on your region (USA, Europe, other parts of the world):
the FM band starts and ends on different frequencies. That is important for the auto-seek function to work correctly)
the channel separation is different (100kHz / 200kHz). That is important for the tuning. In the example it defaults to 200kHz, so you can only tune in frequencies that end on an even number (97.2 97.4 etc.). For Europe, that should be 100kHz, then you can also tune into 97.1 , 101.3 etc.
the de-emphasis time constant is 50µs in Europe. This is important for the Hi-Fi sound quality. Default in the library is 75µs.
I will try to find some time to change and update the library…
Hi. I’m new to arduino - know how to upload code - control lights etc.
Have a vma11 and would like help to get this working - how do i wire it up to speakers for example and do they need their own power to be driven? Be good if there was a tutorial.
Apologies if I have missed something - have the libraries etc and can load ok. Spent money on the board age ago and still haven’t got it to emit sound at all. Thanks
Thanks for quick reply. Per your guidance and a lot of reading between the lines I have changed the library code of Si4703_Breakout_Modified.cpp to include Europe (where I am - UK) Thus
// use this for european (0.100) channel spacing
int newChannel = channels * 10; //973 * 10 = 9730
newChannel -= 8750; //9730 - 8750 = 980
newChannel /= 10; //980 / 10 = 98
and comment out the US default
I have then loaded the fm_rds_test.ino sketch and connected a speaker to check a signal - I hear noise! which is more than I did before so thank you for getting me this far - lol.
In the manual it indicates that some other connections should be made - ie you can’t just connect the shield - wire a speaker, load the sketch and you’re hearing radio. I apologies if I appear “a dummy” - that is probs because I am a newb and making mistakes. I am guessing I need to ground pins and make connections across the shield board to actually tune and get rds feedback.
I would appreciate any tips for howto. I have also realised I neeed to go through the arduino starter course all over again
There’s really not much more to do than plug the shield into a UNO and connect a speaker.
The power for the radio is pulled from the UNO board.
All the settings (tuning, volume) is done by software. No need for any other connections.
If you hear noise, that’s already a good indication that stuff is working.
I would suggest that you skip the RDS and stuff at the moment, try the attached basic sketch.
It initializes the radio chip, sets a volume level, and sets a frequency.
You should hear radio coming out of the speakers by then.
Adapt the volume and frequency values to tune into a strong local station.
When you get the board working with that elementary stuff, you’re ready to explore the rest of the features.
Being a development board, this module uses the ‘elementary’ application of the radio chip. Everything is routed and wired as it should be to allow you to test the chip, but there are no extra’s to avoid damage by reverse powering, overload, EMC,… things that a commercial product would have. In particular the antenna is risky. Pre-installed is an isolated piece of wire, I have replaced it by a normal sprite antenna. First time I touched this antenna the chip and/or Arduino crashed. Power-off, power-on, worked again. On another occasion, touching the antenna caused the same effect. However, no POPO solution here: the radio chip died from the body discharge on the antenna…
My advise: keep the ISOLATED wire.