Introducing XDA:DevCon – A Conference For Developers By Developers
XDA Developers Android and Mobile Development Forum
Forgot your password?
 
Post Reply+
Tip us?
 
mikereidis
Old
(Last edited by mikereidis; 5th May 2013 at 05:41 AM.)
#1  
Recognized Developer - OP
Thanks Meter 1839
Posts: 4,322
Join Date: Jan 2011
Location: National Capital Region
Lightbulb [APP] Spirit FM

Spirit is a real, tuned, over-the-air FM radio app for Android. It does not require Internet access.

I NEED to take some time off, so please help yourself to all the info in the first 3 posts of this thread, and links to FAQs and trouble-shooting tips and other info : http://forum.xda-developers.com/show...3#post41055663

Galaxy S4 = No OTA FM: "In with a bang, and out with a whimper." http://forum.xda-developers.com/show...postcount=6001

Where has all the FM gone ? Gone to streaming, every one ? http://forum.xda-developers.com/show...postcount=6000

See Supported Device List in post #2 below.

Variants:
  • Spirit Free: Basic & Mono. Digital audio on Galaxy S. See post #3.
  • Spirit Two Free Alpha: Digital Audio & other Unlocked features.
  • Spirit Light: (supported but no longer sold.)
  • Spirit Unlocked: RDS, Media Buttons, Lockscreen & much more.

Spirit is the ONLY fully digital FM app:
  • Bluetooth A2DP headsets in CD quality stereo.
  • Recording in CD quality stereo.
  • External visualizers, equalizers and effects.
  • Internal Wave and FFT visual: 5x8 dB & log2 43 - 22,050 Hz.

Digital audio support:
  • Rooted International Galaxy S, S2, S3, Note, Note2.
  • Rooted HTC One XL, One S, Evo 4G LTE, Sony Xperia T.
  • Most stock Sony 2012-2013 devices.

Record only support:
  • Stock International Galaxy S2 Jelly-Bean, S3, Note, Note2.


Download:
Info:

News:

Please purchase Spirit Unlocked for full features, excellent support, and help Android FM.

Thanks !
Mike.
The Following 319 Users Say Thank You to mikereidis For This Useful Post: [ Click to Expand ]
 
mikereidis
Old
(Last edited by mikereidis; 6th May 2013 at 09:54 PM.)
#2  
Recognized Developer - OP
Thanks Meter 1839
Posts: 4,322
Join Date: Jan 2011
Location: National Capital Region
Compatibility

Prior: http://forum.xda-developers.com/show...59296&page=480

No FM:

These devices, and many more, are not physically capable of FM, except as noted:
  • Samsung Galaxy S, S2, S3, Note, Note2 US/Canada LTE variants.
  • Google Nexus 4.
  • HTC Verizon Droid Incredible 4G LTE.
  • Motorola Verizon Razr I XT890 (JB update disables FM. Works w/ root, but no audio.)
  • Motorola Verizon Razr HD & M / Maxx. (Australia variant has FM.)

Manufacturers:
  • Samsung: 70 %
  • HTC: 23 %
  • Motorola: 4 %
  • Sony: 1.3 %
  • Huawei: 1.0 %
  • LG: 0.8 %

Devices:

As of April 7, 2013: 69 devices supported, except as noted.

Other devices may work, but I can't support them.

By 2013 popularity: most to least. I own the most popular and can support them much better.

Samsung (14):
  • Galaxy S2 GT-I9100 / M / T
  • Galaxy S3 GT-I9300
  • Galaxy S GT-I9000 / M / B / 9010
  • Galaxy Note GT-N7000
  • Galaxy S Plus
  • Galaxy Note2 3G GT-N7100
  • Galaxy W / Wonder / GT-I8150 / B
  • Galaxy Cooper GT-S5830 / L / D / B
  • Galaxy S2 GT-I9100G
  • Galaxy Gio GT-S5660 / M
  • Galaxy 5 / Europa / 550 / i5500 / i5503
  • Galaxy SL GT-I9003
  • Galaxy Mini / Dart SGH-T499 / Tass GT-S5570
  • Galaxy Player / S WI-FI

HTC (30):
  • One X LTE (AT&T) / XL / Evo 4G LTE / One S
  • One X International S720e
  • Sensation 4G / XE Z715e
  • Desire HD
  • Desire
  • Nexus One (need root & non-stock kernel)
  • One V
  • Desire Z / G2 / Evo Shift 4G (G2 needs root)
  • Desire S
  • Wildfire S A510e / PG762
  • One X+ LTE (AT&T) (Not on custom ROMs)
  • Droid Incredible 2 / S S710E
  • HD2 / Leo / T8585 / T9193
  • Explorer a310e / a310b (No RDS unless rooted)
  • Velocity 4G
  • Evo 4G / Supersonic (2010)
  • Evo Design 4G / Kingdom / Acquire / HeroS
  • Aria / Liberty / Intruder A6366
  • Glacier / T-Mobile myTouch 4G
  • myTouch 4G Slide
  • One X+ 3G (Not on custom ROMs ; disabled pending confirmation)
  • ThunderBolt / Scorpion ADR6400L
  • Wildfire
  • Droid Incredible ADR6300
  • Amaze 4G / Ruby
  • Legend
  • Sensation XL X315e
  • Chacha / Status
  • Desire X (1 confirmation stock un-rooted)
  • One (No confirmation yet ; disabled pending confirmation)

Motorola (12):
  • Defy A8210 / MB525
  • Droid 4 (need root)
  • Droid Bionic (JB update need root: http://forum.xda-developers.com/show....php?t=2256439)
  • Photon 4G MB855
  • Droid X2
  • Droid 3
  • Droid X
  • Milestone 3 XT860 / ME863
  • Pro Plus ME632 / MB632
  • Droid2 A955 CDMA (need root & mono)
  • Atrix 2 MB865
  • Bravo MB520

Sony (11) (Most only work stock for now):
  • Xperia S / SL LT22i / ii
  • Xperia Acro S LT26w
  • Xperia Ion LT28h / at / i
  • Xperia P LT22i
  • Xperia Sola MT27i
  • Xperia Go ST27a / i
  • Xperia U ST25i
  • Xperia T LT30a / at / p
  • Xperia V LT25i
  • Xperia TX LT29i
  • Xperia Z C6603 / C6602 (no speaker ?). ZL & Tablet Z may work with Audio-> Method = "Qualcomm Intent".

Huawei (1):
  • Ascend G300 u8815

LG (1):
  • Optimus One P500
The Following 60 Users Say Thank You to mikereidis For This Useful Post: [ Click to Expand ]
 
mikereidis
Old
(Last edited by mikereidis; 23rd March 2013 at 07:02 AM.)
#3  
Recognized Developer - OP
Thanks Meter 1839
Posts: 4,322
Join Date: Jan 2011
Location: National Capital Region
Galaxy S GT-I9000 speaker damage risk:

Quote:
March 23, 2013: See end of post for digital audio solution. Digital audio is normally an Unlocked exclusive feature, but on Galaxy S it is available for Free users.
There is a risk of speaker damage on Galaxy S GT-i9000 when running custom ICS or JB ROMs.

If you've been running Spirit for at least 10-40 hours with no problem, your risk is minimal. I think this is hardware related and about 1-5 % are susceptible. I get about 1 report every 3 weeks now.

Avoiding use of the speaker or keeping volume low does not help. Risk may increase when using USB cables to PCs or chargers or external amplifiers.

If you are worried about Galaxy S speaker damage, then DO NOT use Spirit, unless on CM7 or a stock derived ROM. Use GB ROMs with proven safe FM, get a new phone, or just live without FM.

Unless you are familar with ALSA programming, Ioctls and low level Linux/Android kernel stuff, as well as DC servos in amplifiers, please do not think you have useful technical advice to give about what I should study. I've spent at least 400 hours on this problem, with no analog solution.


Have Damage ?:
If you've had GalaxyS speaker damage, and are a BRAVE do it yourselfer, here are some Ebay links for speakers and instructions on replacing them: http://forum.xda-developers.com/show...postcount=2355 All responsibility for any problems doing this is yours.

Ringer/Buzzer Speakers are available on Ebay new for $6 shipped, or $8 refurbished shipped from the US to the US.

I'm very sorry for any problems. I had no idea this problem would happen or go on this long. It's rare that software causes hardware damage.

If you're angry, or think my dev skills are sub-par, please refer me to the secret documents for FM audio via Galaxy S ALSA controls. There is none. I've read the code for various audio libraries, and the ALSA drivers, many times, and though the March 4th, 2012 attempt seemed a virtual duplicate of the CM7 audio lib, the problem continued.

If you've been affected, please email me at mikereidis@gmail.com to report.

Thanks, and sorry for any troubles.


Hopeful Digital Audio Solution:

Using digital audio mode likely reduces or eliminates the risk. As of March 23, 2013, it's too early to tell.

On first Spirit startup, or after clearing app data, you are presented with a choice of "Digital" or "Danger". Choose "Digital". If running Unlocked, restart Spirit to enable Visualizations and a record button.

You can also set Menu-> Settings-> Audio-> Method to "Digital Auto" or "Digital GS1", both near the end of the list.

If you hear interrupted high frequency "chipmunk" sounds, rebooting may help, at least until the microphone is used (but phone calls OK ?).

If a reboot doesn't help, you can disable Digital-> Stereo and do Pause / Play. Audio is now mono of course, so you might as well set Audio-> Output Mode (or Channels next release) to "Mono Force".

More chipmunk info: http://forum.xda-developers.com/show...postcount=5696

Battery consumption may be a bit higher using digital. Unlocked uses substantially more CPU & battery when visualization is on screen, and when equalizers, effects and Bluetooth are in use.
The Following 23 Users Say Thank You to mikereidis For This Useful Post: [ Click to Expand ]
 
djeaton
Old
#4  
djeaton's Avatar
Senior Member
Thanks Meter 10
Posts: 131
Join Date: Mar 2011
Location: Canton, GA

 
DONATE TO ME
It launches fine on my Inspire 4G running CM7, but I can't pick up many channels where I am. My location isn't your fault though.
Palm -> Blackberry -> Windows Mobile -> iOS -> Android
Stock Galaxy S III SGH-I747 running 4.1.1
MK808B Android Stick
Rooted Nook Touch w/Glowlight
 
pilgrim011
Old
#5  
Senior Member
Thanks Meter 248
Posts: 1,177
Join Date: May 2008
Location: Belgrade
Why every custom radio app turns on BT? HTC FM radio doesn't do that? I know that there is some explanation about BT and FM sharing the same chip, but it's weird to me that HTC radio doesn't turn BT on...

Btw, I have tried this on HTC Desire, but I was unable to scan via "scan" button - I get "FM operation failed. If problem persists, please turn off FM and turn it back on." One more thing - I did a quick comparison with MIUI FM (which is the default radio in Oxygen ROM), and it seems it's not that good with picking up FM signal.

I like that signal strength indicator, btw.
SGS2 & HTC Desire
 
mikereidis
Old
(Last edited by mikereidis; 2nd May 2011 at 02:15 AM.)
#6  
Recognized Developer - OP
Thanks Meter 1839
Posts: 4,322
Join Date: Jan 2011
Location: National Capital Region
Quote:
Originally Posted by pilgrim011 View Post
Why every custom radio app turns on BT? HTC FM radio doesn't do that? I know that there is some explanation about BT and FM sharing the same chip, but it's weird to me that HTC radio doesn't turn BT on...

Btw, I have tried this on HTC Desire, but I was unable to scan via "scan" button - I get "FM operation failed. If problem persists, please turn off FM and turn it back on." One more thing - I did a quick comparison with MIUI FM (which is the default radio in Oxygen ROM), and it seems it's not that good with picking up FM signal.

I like that signal strength indicator, btw.

Thanks for your report ! BT is needed to control FM. Most FM "chips" are combination devices with WiFi and Bluetooth, and in some cases GPS. In theory, the manufacturers could enable a separate FM access mechanism, but in most known cases, FM control rides piggyback on Bluetooth HCI commands. Also in theory, if Bluetooth wasn't needed, control could likely be obtained directly from the serial port interface. But that doesn't make sense from a software architecture point of view.


I think the HTC app may be hiding the fact that it's using BT. Eg. if you run "bttest enable" from command line, Linux and hcitool and my app can use BT, but Android doesn't recognize BT is on, because the higher level Android stuff hasn't been started.

The HTC app takes about 6 seconds to start if BT is off. If BT is on I think it's much faster. It's no co-incidence that BT startup takes that time also.


On TI FM chips, it IS possible to turn BT back off when no FM control or data access is needed, just so long as WiFi or something else using that chip is still on. (Otherwise the Android power manager turns it off.) I will look into that further if needed, but I've seen my phones running 8-12+ hours with BT on and FM playing on a single charge.

Yes, the "Scan" function is not functional at this time. Long pressing the arrows for "Seek" should work though, albeit not well on Broadcom devices such as the Desire.
I need "time off" so please refer yourself to ALL the info linked to post #1 below. Compatibility list, FAQ, info links...
__________________________________________________
Spirit FM: Digital Audio, RDS, Media Controls+Much More
http://forum.xda-developers.com/show...php?p=13379669
The Following 2 Users Say Thank You to mikereidis For This Useful Post: [ Click to Expand ]
 
mikereidis
Old
(Last edited by mikereidis; 2nd May 2011 at 01:32 AM.)
#7  
Recognized Developer - OP
Thanks Meter 1839
Posts: 4,322
Join Date: Jan 2011
Location: National Capital Region
Quote:
Originally Posted by djeaton View Post
It launches fine on my Inspire 4G running CM7, but I can't pick up many channels where I am. My location isn't your fault though.
Wonderful ! Thanks for your report.

Standing on a roof with the antenna/headset cable extended the right way may help. Probably not safe enough to recommend though, unless you accept all risk.

Longer wires don't help at FM frequencies in my experience, but something directional like a VHF TV antenna might be good.

Switching to "Mono" mode can help clear up the audio with weak signals, with the resultant loss of one channel of course.
I need "time off" so please refer yourself to ALL the info linked to post #1 below. Compatibility list, FAQ, info links...
__________________________________________________
Spirit FM: Digital Audio, RDS, Media Controls+Much More
http://forum.xda-developers.com/show...php?p=13379669
 
mikereidis
Old
#8  
Recognized Developer - OP
Thanks Meter 1839
Posts: 4,322
Join Date: Jan 2011
Location: National Capital Region
I've published the app to the Google Marketplace: https://market.android.com/details?i...=search_result

I would prefer that installations be done from the Market now. You can select Automatic updates among other things.

I bumped the version number to 2.0.3 to reflect the disabling by default of the SuperUser ("su") request. If anyone had an older CM ROM that needed this workaround, it can be re-enabled by creating a file named fm_su on the SD Card.

# Eg.: "adb shell touch /sdcard/fm_su"

This command could be tried if you are not getting audio.

# To remove: "adb shell rm /sdcard/fm_su"
I need "time off" so please refer yourself to ALL the info linked to post #1 below. Compatibility list, FAQ, info links...
__________________________________________________
Spirit FM: Digital Audio, RDS, Media Controls+Much More
http://forum.xda-developers.com/show...php?p=13379669
The Following User Says Thank You to mikereidis For This Useful Post: [ Click to Expand ]
 
jorgeefflores
Old
#9  
Junior Member
Thanks Meter 2
Posts: 19
Join Date: Dec 2010
Would this work with the Nexus S?

Sent from my Nexus S using XDA App
 
dancer_69
Old
#10  
Senior Member
Thanks Meter 165
Posts: 1,748
Join Date: Jan 2007
Default Greek translation

I translated Spirit FM Radio to greek.
Here is the archive with the translation files, please add them to the app.
Thanks
Attached Files
File Type: rar values-el.rar - [Click for QR Code] (4.0 KB, 1064 views)

The Following 4 Users Say Thank You to dancer_69 For This Useful Post: [ Click to Expand ]
 
Post Reply+
Tags
spirit fm radio receiver ota
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

report this ad
Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Go to top of page...