FM Receiver?
Hi all,
Is there any FM receiver we can connect to the propeller?
I'm building a OGG player for my car, and if I can add an FM received, I will be able to get rid of my existing sound-system...
Thanks,
JM
Is there any FM receiver we can connect to the propeller?
I'm building a OGG player for my car, and if I can add an FM received, I will be able to get rid of my existing sound-system...
Thanks,
JM
Comments
I have a few of these for a dream project. Have a look.
http://www.mouser.com/ProductDetail/Silicon-Labs/Si4705-B20-GM/?qs=sGAEpiMZZMvzv9EAOJZmOxdVGidngb38
http://www.sparkfun.com/commerce/product_info.php?products_id=8770
-joe
Super!
Thanks folks.
I will probably go with the one at SparkFun http://www.sparkfun.com/commerce/product_info.php?products_id=8972
I'm adding so much features on my projects that I will maybe never finish it
JM
I finally received the WRL-08972 with the AR-1010 (http://www.sparkfun.com/commerce/product_info.php?products_id=8972).
The example they have on the page is for Atmega. So I'm wondering if someone understand list language and can translate that to spin?
I took a look into the code, and it seems to be talking to the AR-1010 with I2C.
So can I "simply" use an IC2 object to talk to it, like http://obex.parallax.com/objects/26/ ?
Thanks,
JM
In the documentation for the FM receiver, there should be a description of the format of the information to be sent to/from the receiver. You should be able to use the routines in i2cObjectv2 as a model for your receiver since the receiver behaves somewhat like a small memory with a set of memory locations (control registers) that get set and read to control the receiver and many other I2C devices behave the same way.
It took me some time, but it's working now
Thanks a lot! I modified i2cDemoApp to add AR1010 demo like this:
Output should be:
Where %00100000 mean "Seek/Tune complete flag, '1'=Complete, '0'=Incomplete"
The documentation is awful! Missing many important information.
Anyway, thanks a lot! I now have to try to get more than just the status
JM
Forget it, it's not working at all
It's just a change that this bit is at 1.
I'm not using i2cObject the right way. Also, $20 is AR1010Addr. So I should not send it twice
Look like should use readLocation, but I'm not able to get that working too.
So I'm still try... Also spent 4h on that with no success. But I will win!
JM
Looks like I will need some help.
i2c scan is able to find my component at the right address.
The challenge I'm facing is that Basic_I2C_Driver is talking bytes but I need words.
Here is the C code for it :
It's very close to the readLocation method expect that we are ready only one byte. So I modified it that way:
I checked the device_address and it's equal to AR1000_W. Also, AR1000_R is device_address | 1.
So those 2 pieces of code are very close.
However, when I run this spin code:
It never returns the same value
Ok, for a random generator, it's probably a good one
So. What's wrong? Is that correct to try to read 2 bytes from the i2c channel?
If I loop 40 times, I can see that after 29, it's starting back to 0. Since the AR1010 only have 29 registers, that looks normal. That mean write(SCL,register) is not moving to the register I need? And then I'm reading all of them 1 by 1?
Last thing, in the documentation, I have a 2-wires vs 3-wires options using BUSEN pin. I have configured it for 2-wires. Correct?
Thanks for who will be able to help me...
JM
It has wrapper methods for word access.
http://obex.parallax.com/objects/466/
Very nice
I spent so many hours on the last few days!
I did not even tought about searching AR1010 on OBEX!!!!!
So.... It's working A1!
There is few features that still need to be defined (Like Seek Forward, Seek Backward, etc.) but now I have a really good base to work with!
Thanks a lot to all of you for your help!
JM