Lets get FM Radio on the Optimus S

zefie

Well-known member
Nov 15, 2010
844
634
0
The hardware is there, and CyanogenMod + MIUI already did it for the Nexus One, so surely it is possible.

http://www.androidcentral.com/cyanogenmod-nightly-nexus-one-brings-long-awaited-fm-radio-support

The only apparent differences is the N1 has BCM4329 and we have BCM4325. The only apparent differences between those two chips is that the 4329 (N1) also can TRANSMIT FM, and has 802.11n. It should still be possible though!


Broadcom.com - BCM4325 - Low-Power 802.11a/b/g with Bluetooth? 2.1 + EDR and FM

Broadcom.com - BCM4329 - Low-Power 802.11n with Bluetooth? 2.1 + EDR and FM (Tx and Rx)
 
Sounds beautiful. Can I feature this work on [MyWebSite]? I will probably just copy and paste the informations, lemme know your terms.
 
Last edited by a moderator:
Sounds beautiful. Can I feature this work on [Website Removed]? I will probably just copy and paste the informations, lemme know your terms.

We haven't accomplished anything yet. I tried working with the GT540's FM Radio but the only dump I could find was pre-2.0 so i couldn't integrate it into our ROM.
 
Last edited:
This would be.cool what would even be better is a way for us to broadcast as well so no more hook up.for.phone to car connections

Sent from my LS670 using Tapatalk
 
This would be.cool what would even be better is a way for us to broadcast as well so no more hook up.for.phone to car connections

Sent from my LS670 using Tapatalk

Unfortunately our chip does not have the transmit feature.
 
The methods in AudioManager are the same so injecting the FM functions went smoothly, no errors, but no radio either.

It sits on "Please wait" and logcat says:
W/FM radio( 2585): [FmRadio][RadioOnRunable] waiting to service ready - 1
W/FM radio( 2585): [FmRadio][RadioOnRunable] waiting to service ready - 2
W/FM radio( 2585): [FmRadio][RadioOnRunable] waiting to service ready - 3
W/FM radio( 2585): [FmRadio][RadioOnRunable] waiting to service ready - 4
W/FM radio( 2585): [FmRadio][RadioOnRunable] waiting to service ready - 5
W/FM radio( 2585): [FmRadio][RadioOnRunable] waiting to service ready - 6
W/FM radio( 2585): [FmRadio][RadioOnRunable] waiting to service ready - 7
W/FM radio( 2585): [FmRadio][RadioOnRunable] waiting to service ready - 8
W/FM radio( 2585): [FmRadio][RadioOnRunable] waiting to service ready - 9
D/FM radio( 2585): [FmRadio][RadioOnRunable] interrupted

Bluetooth is on. I can feel I am close though.

Edit: think i'm getting closer, still trying to hack the framework to enable bluetooth fm radio service. most of the code is there just not the enabler.

Edit2: got everything to work flawlessly, as in no crashes, but no radio. same issue.

11-29 02:42:38.321: ERROR/BluetoothProxyManager(2718): Unable to get service proxy for bluetooth_fm_receiver_service. Service is not enabled...
 
Last edited:
Or you can just download "Tunein Radio". Pretty nice app....

This is about FM radio not Internet Radio. Why does every FM radio thread get plagued with "but I can stream it online with *insert app*"?

BTW I have the full version of Tunein, RadioTime. It is a nice app, but they don't have EVERY station due to licencing.

Also, even if it did, it wouldn't stop me from wanting to unlock features of my device.
 
It's been my experience on the EVO that streaming a radio station takes up significantly more battery than listening to FM. So if FM will work, and you want to listen to a local station, this may be a much better option than streaming. Additionally, listening to a station over FM doesn't weigh into your unspoken 5gb data cap (not like sprint is enforcing it but it does exist). Streaming 1 single episode of rovers morning glory on iheartradio is slightly less than 1gb i believe is what rover measured it out to when he was complaining about carrier caps.

Point being, there are several functional reasons why people would want to see this come to fruition.
 
Streaming 1 single episode of rovers morning glory on iheartradio is slightly less than 1gb i believe is what rover measured it out to when he was complaining about carrier caps.

That's strange. I use Public Radio Live Stream to listen to my local NPR station 30 minutes each way every business day, and the data usage on my last bill was just under 1gb total. I also use Google Navigation a lot and during the baseball season I stream a lot of MLB At-Bat live audio, and I've never gotten over 1.5gb. Whenever there is a post about data caps, I never pay it much attention, figuring that with the data amount I accumulate with my regular usage, those getting near the cap are actually data abusers that should be capped. However, if other streaming programs use a lot more data, then perhaps I'm just lucky with the programs I use? If data caps threatened my ability to stream, that would basically eliminate the primary purpose of my phone.

Anyway, back on topic, I'd love to see a working radio. The only reason I stream my local NPR station on my phone is because the radio in my car gets terrible reception. My wife's car pick's up the station perfectly. If the phone has halfway decent reception, I'd use it instead of the streaming app.
 
That's strange. I use Public Radio Live Stream to listen to my local NPR station 30 minutes each way every business day, and the data usage on my last bill was just under 1gb total. I also use Google Navigation a lot and during the baseball season I stream a lot of MLB At-Bat live audio, and I've never gotten over 1.5gb. Whenever there is a post about data caps, I never pay it much attention, figuring that with the data amount I accumulate with my regular usage, those getting near the cap are actually data abusers that should be capped. However, if other streaming programs use a lot more data, then perhaps I'm just lucky with the programs I use?

If i remember right, and this may have changed, iheartradio streams at 64 kbps, which translates roughly into 3.75MB per minute, which translates roughly into 225MB per hour. Listening to RMG every weekday for a month over iheartradio would be around 18gb if my math is correct. I really wish we had a good data calculator on these things so it could be more exact :\

Even if it was 32kbps thats still 9gb, You can see why I want FM radio lol
 
my bill never tallies my data usage right. once i wifi tethered over 2gb and it showed up as 500mb on the bill. lol
 
my bill never tallies my data usage right. once i wifi tethered over 2gb and it showed up as 500mb on the bill. lol

That's what I'm leaning towards after looking more closely at my usage. Even at the lowest kbps (don't need a lot of kbps to convey the monotone NPR hosts' voices), there's no way I can stream an hour a day, 20 days a month (not including any additional streaming and data usage) and stay at around 1gb a month. If they ever do tier or cap data, I sure hope they stick to the calculating method they are using now.
 
Wouldn't mind being able to listen to local radio on this thing :P

Anyways one note on Bandwidth/caps with Sprint - there is not official cap as far as I can tell. When I got my first Sprint phone (a Palm Centro) I'd heard that the cap was 5gb, however I passed that many, many times, by quite a bit (I think my top is about 15gb in a month). My connection speed did go down to 10kbps at one point and it may have been Sprint throttling the connection... however I doubt they actually pushed it to that low of a level, as the Centro capped out at 30kpbs for me on a 3g network (blamed the low speed on Sprint til I got my Optimus :P). Don't think there will be a major issue with using a lot of data.

As for tallies, it's always seemed right when I checked, though since I have an unlimited plan I've never worried about checking it frequently.
 
I don't check it often, sometimesI just get curious. The only thing not unlimited is anytime minutes so sometimes I am just curious how many txt's we send or data we used. It's never accurate on my account lol.

5gb is supposed to be for data cards and legit tethering. Device-only data is supposed to be unlimited, but heh, all unlimited internet has some sort of threshold. Cable is 50gb-250gb, EVDO is probably 5-50gb.

Obviously Sprint would be pretty ticked off if you used like 1TB :) But for most people they aren't going to make a stink if you have a smartphone and go over 5gb.
 
Tried working on this again today. Still can't figure out why bluetooth_fm_receiver_service is "not enabled" and where to enable it.

I copied the entire com.broadcom code from the P500's framework to ours, so the fact that it says "DO NOT START FM SERVICE" in the smali cannot be the problem, because it would do the same on the P500.

There has to be some configuration SOMEWHERE that tells the service to enable, but I just can't find it. I looked in all the framework, all of /etc, even bin and lib.. and the APKs. I must be missing something.
 
Tried working on this again today. Still can't figure out why bluetooth_fm_receiver_service is "not enabled" and where to enable it.

I copied the entire com.broadcom code from the P500's framework to ours, so the fact that it says "DO NOT START FM SERVICE" in the smali cannot be the problem, because it would do the same on the P500.

There has to be some configuration SOMEWHERE that tells the service to enable, but I just can't find it. I looked in all the framework, all of /etc, even bin and lib.. and the APKs. I must be missing something.

I believe it's in the kernel. The answer is gonna be in the kernel (my guess).
 

Latest posts

Trending Posts

Forum statistics

Threads
956,710
Messages
6,969,593
Members
3,163,599
Latest member
Marabishi