yashsingh1/xdaforums huggingface dataset:
[Spirit FM] mikereidis:
The phone can be stationary, with the wired headset stretched out and optimally placed as an antenna. Then you can move around and listen on BT headset and this is useful.

If the phone is in your pocket, BT headset is less useful. BUT the wired headset could be placed to optimize reception without the need for the earbuds to end up in your ears.

Different phones and chips can be very different in how well they work with no wired headset plugged in for antenna. Metal phones like HTC One or my ancient Legend are useless with nothing plugged in.

Plastic phones can differ in well the PCB traces running to the headset work, based on length and positioning. I have an old, cheap Galaxy 5 series device that can receive RDS with no antenna, and yet many expensive and more recent phones have very bad reception with no antenna.

Maybe, but it's easy to believe that "one, last step" is easy, when sometimes it proves to be impossible or un-feasable.

There are many phones I've never been able to support where there was just "one last problem: no audio".

And phones like the Razr I on which sometimes a regular, repeating noise would be heard.

If your problem was just due to gain set too high, which would cause distortion when audio hit peaks, then lowering gain somewhere could help.

I still have problems on phones I own, like HTC One w/ GPE, where in digital mode, the audio will change significantly when the app is in foreground or background or when the screen is turned off. I'll figure that out eventually, along with 100+ other problems, but that might not leave me with much time to fix strange issues on phones I don't have.

And this makes my trouble-shooting of reported problems easier at this time. I don't have to ask and wonder what settings a problem reporter is using, or ask them to clear their app data.

If Spirit2 doesn't recognize the device, it starts with audio muted. Unmuting it produces a test tone. I find this useful for doing some tests on my Nexus 7's for example.

I'm just waking up, but if it has the Qualcomm FM/combo chip and a Qualcomm audio chip, I'd just call it the standard Qualcomm reference design, or the all Qualcomm combo.

Generally, if SpiritX works on one of these, like my OneXLTE or MotoG, it tends to be able to work on all, including HTCs, Sony's and LGs. There are some vexing differences though, such as internal antenna pin on Xperia T, or needs for different buffer sizes depending on chip generation.

When I look here: https://play.google.com/store/apps/details?id=fm.a2d.s2

I see: "Updated December 5, 2013" and "Current Version 2013_12_05"

Sometimes a dated version is uploaded before that date California time, so the version name doesn't exactly match Googles update date.
[Spirit FM] mikereidis:
Yes, just set Menu-> Settings-> Band to one of the "World..." settings, and restart Spirit.

In most places "World 100 KHz" will work well.

If stations are always 0.2 MHz apart, "World 200 KHz" is better.
[Spirit FM] MarcusAnthonius:
Hello Mike,

I will test it and if it's oke I will buy it.
[Spirit FM] mikereidis:
These settings worked for at least 1 person w/ Ace2 GT-I8160:

Menu>Settings>Audio>Method> = "Galaxy S3/Note/S2_ICS"

Menu>Settings>Audio>Volume Scale = 20

I guess it was too loud without Volume Scale = 20.
[Spirit FM] selemine:
I tried spirit on a new cell phone and was wondering how one can detect if there is a chance to get fm support? what except for sound already working hints at fm being supported by the chip used?
[Spirit FM] soraxx:
Great! But there is a way to make the Headphones/Speaker switch button work without enabling "Silent loop off" option and restarting? I get a "speaker only mode" with that checked a an "Headphones mode only" unchecked.It was working before but I have removed Spirit app data in order to have a clean configuration. :(
[Spirit FM] mikereidis:
If Spirit1 Free/Light/Unlocked can support a devices' tuner API, and if it's given root, then at least the tuner part should usually work automatically, 99+% of the time.

Tuner part means that when a headset is plugged in for antenna, you should be able to tune stations and see RSSI signal strength at top left of 20 or more when tuned to a good station. Seek up and down should also work, as well as RDS with Spirit Unlocked.

Spirit1 supports pretty much every FM or FM/combo chip and API used on Android: Broadcom, TI, Silicon Labs for Samsung, & Qualcomm. It doesn't support MediaTek and can only support ST-Ericsson Novathor Sony 2012 devices indirectly using the Sony API.

Then the next challenge is getting audio. Sadly there are many devices for which I and Spirit do not know the secrets to enable FM audio.
[Spirit FM] mikereidis:
Good...

No, I'm not familiar with that problem, and I don't have a solution.

But on some phones, you can switch from headset to speaker by removing the headset plug enough to trigger the switch to speaker, but still plugged in enough for the antenna effect.

My sales statistics for this phone show one (1) sale so far, to Nov 1, 2013.

For a phone released about 1.5 years ago, 1 or 2 sales so far sadly doesn't give me much incentive to explore any problems, especially not when there are known problems to fix on devices that have thousands of sales. :(
[Spirit FM] mustasusi:
Bluetooth works nicely too. I find it can be useful indeed when I go to the bathroom and can leave the phone settled in spot rather than grab it with me and look for reception (that might be weaker) there. It produces extra background noises, affected by radiation I guess, similar to those generated on Note1 by WiFi (and I guess bluetooth too). Of course if I use a 3.5 wire I have to remain it half the way plugged or else it routes the sound back the the headphone jack.

That's interesting. I used to think that conductive materials e.g. metal covers should enhance the antenna layout. My plastic made "Notes" don't do either, at least until I put a finger on the headphone jack. How comes metal parts have such negative effect?

But it's not the case with my Max - AFAIC, it acts above all expectations, meets all my needs. *Just the 22khz could be up-scaled to 44.1 but I only if you really have spare time and bored enough. Just another weak spot is sometimes when seeking for stations it locks on a strong one but shows an incorrect frequency number. RDS is correct and by that I realize the number is wrong. If I go a single step it then plays the actual frequency shown or I can seek again and hope it gets even.

Simply awesome! If this efficient way of monitoring works well maybe we can expect more supported devices in less time. I'm willing to buy Spirit2 but only if it plays audio more than a single tone. I don't see the HTC One listed either.

I don't know the schematics of this phone and where to get it but it appears to be a pure Qualcomm one, no fun with |HTC One| methods. I guess the only thing both have in common is the buffer size. I'm still amazed that Motorola devices like RazR & MotoX have FM capabilities at all since the Bionic.

I'm afraid I mistook with the Spirit2 page. But on 2nd thought, I'm sure I read the "Spirit1" written on the post of yours a few steps above me.

Anyway, I'd like to know how Spirit2's doing and make a purchase.
[Spirit FM] mikereidis:
Metal boxes act as a shield, always true with RF. Antennas produce a differential voltage over their length, depending on wavelength/frequency. A metal box makes the voltage about the same all over, more or less "shorting out" the signal.

Set Digital-> Sample Rate to 44101 and restart Spirit to try.

And AF-> AF Period can be set for buffer sizes. Values like 320 or 640 might work, as might 2048, 4096. Set back to 500 for the default.

HTC One is "supported" by Spirit2, but it has a bunch of problems to be fixed in next release.

Did you get that backwards ? MotoX has no FM, and none of the Razr's have FM, except for the Razr I, which Motorola has disabled in JB update.
[Spirit FM] mikereidis:
Spirit1 Unlocked December 5 Beta has been advanced to "Production" with a 5% roll out rate. I think that means that 5% of customers (per day?) will get the new version.

At this point in the lifecycle of Spirit1, I want to minimize any problems while still fixing the most pressing issues.
[Spirit FM] nicesoni_ash:
Ok, as reported about my last bug which was audio coming through only one earphone and sometimes surrounding sound, I came to find that it only occurs if I set to digital auto, if it's auto, no problem.

_____________

Sent from my GT-I9300 powered by Temasek Rom & Kernel

Fueled by 7000mAh ZeroLemon Battery
[Spirit FM] ristokoo:
I have a GT-I9300, and replaced my Samsung ROM with Slim 4.3 build 2.2 last week. Today I noticed I miss FM radio;)

So I looked up Spirit and bought it from Play Store (the version seems to be 2013_09_18).

The problem is, I get no sound, both headphones and the speaker are silent. RDS info and radio text are shown so it seems the reception is ok. Are there some settings I should change?
[Spirit FM] ts1506:
Hello.

I am not too familiar with Spirit FM, I only used it for some time back in ICS , now I tried it on Kitkat.

Phone is Samsung Galaxy S i9000.

Whenever I run spirit FM , it works perfect, but after closing it, if I call someone, I cant hear anything through the earpiece, earphones or speaker mode works. I have to restart to make the earpiece work again.

I have tried Galaxy S ICS mode and Digital GS1 mode, same issue on both.

I tested it in JB 4.3 , same issue there too.

Thanks for your time,

ts1506
[Spirit FM] James Bottomtooth III:
This happens to me as well unfortunately, I think this is a common issue on the i9000.

You could try analog mode. It works well for me but be aware of the speaker damage problem. If you want to stay on digital mode try going to Settings>Debug>Power restart media>Enable. This restarts the android audio system after you close the app so that you don't need to reboot.
[Spirit FM] Quadrescent:
Thanks

thanks for the share

its awesome.:good:
[Spirit FM] mikereidis:
Spirit2 only has digital mode. Have you tried Spirit2 ? http://d-h.st/2Ib
[Spirit FM] mikereidis:
Thanks for your support. :)

Lack of root/SuperUser/SuperSU is the most common problem these days. But if the tuner portion with RSSI and RDS works, then root is not your problem.

Set Menu> Settings> Audio> Method to "Galaxy S2/Note2 ALSA" and restart Spirit. You can also try the "Digital GS3/Note" setting near the list end.
[Spirit FM] mikereidis:
The "niggabyte" poster offers good advice about trying Settings>Debug>Power restart media. But this only resets audio when FM is turned off, it won't help when a phone call interrupts FM.

It's worth trying Spirit2, which doesn't yet have an FM over speaker mode, which may help prevent issues like this: http://d-h.st/2Ib

After rebooting the phone, either run ONLY Spirit2 to test. Another test could involve rebooting and only running Spirit1 in headset mode, never speaker mode.

There ARE known problems when unplugging a wired headset after a phone call interrupts FM.
[Spirit FM] mikereidis:
Thanks.

Just FYI and for the thread:

There still have been reports of GT-I9000 speaker damage after running only in digital mode.

I only get 1 report every 2-4 months now, and that may be partly due to the age of the Galaxy S, but I still do get them.

It's not clear if digital mode is safer than analog.
[Spirit FM] nicesoni_ash:
Yes, I did try it. I reported about its bug too in spirit2 thread which was fixed in next version but it's still a bit far from perfect as it's WIP so for the time being I am with Spirit1. I need digital mode as sometimes need to record something but I can live without it if it's making problems with other uses. :)

_____________

Sent from my GT-I9300 powered by Temasek Rom & Kernel

Fueled by 7000mAh ZeroLemon Battery
[Spirit FM] ristokoo:
Thanks a million, Digital GS3/Note did it. Lazy me, didn't browse the audio selection list all the way down :o

Money well spent: excellent audio, excellent support!
[Spirit FM] mikereidis:
:)

Most common/important Audio-> Method settings are near the top.

Digital is near the end for an easy fling and because it's still technically "not 100% supported".
[Spirit FM] yunn:
I can listen almost all of the FM radio, thanks.
[Spirit FM] James Bottomtooth III:
My mistake. I was not aware of this.
[Spirit FM] thommcn:
Hi Mike,

Thank you for your continuing efforts. Could you add me to your free Spirit2 upgrade list? I've don't have a record of my Spirit FM purchase but you could pm me for my email address if it helps. Thomas
[Spirit FM] mustasusi:
Another reason for me to replace the aluminium back cover with a plastic one, if such a product was released at all.

The first reason is to cut a rectangle-ish window so a regular SD card can fit through it.

Secondly, to stop getting a brain freeze when I pick it up every morning.

Digital is already set to 44 by default, disregard any restriction might be applied as per method preset.

Unfortunately only 500 and 320 are working pretty well. Higher values cause a 'bubbling-mud' effect (if I describe it correctly). Lower than 320 may cause sound degradation too so I ended up leaving it to default 500.

I confused with MotoG - the mid-range, yet newer model. This leaves only Sony and HTC to keep support this platform in their flagships.
[Spirit FM] thommcn:
Spirit2

Hello mikereidis,

I love your new app, forget about the free upgrade you've offered to past Spirit customers in my case - I'm happy to donate to the cause and besides, I've lost my receipt of my purchase of Spirit FM. So Merry Christmas to you and for that matter the whole forum.

Thomas
[Spirit FM] thommcn:
Hello mikereidis,

I've a request to add to your Spirit2 development list; could you add settings options to Spirit2 that you have in Spirit FM. Audio auto detection doesn't work with Spirit FM or Spirit2 on OmniROM - I've to manually set audio to digital GS2.

Thomas
[Spirit FM] ciku720:
Hmm.. I like this app!
[Spirit FM] mikereidis:
Hmmm...

I'm not happy with the decision of the OmniROM devs to use unique, non-stock, made up and unofficial values for "ro.product.device".

This value is used by Play app filtering, and also is I think the best way to identify a device.

One "nice feature" of Spirit1, besides configurable FM chip/API and audio method and other stuff, is the auto-detection of these things.

But that's became a major software maintenance issue. There are so many special cases that it's hard to work on and make robust.

So with Spirit2, so far, I'm just trying to detect supported devices, using ro.product.device.

Right now with Spirit1, I have no idea how many customers regularly use a specific combination of settings. I don't know if I can remove bad, unreliable or tricky code yet. Are 10 people using it ? 100 ? None ? I don't know.

And I make changes to the code, and I later get bug reports that it's broken things on a phone I'll never have to test on.

And people WILL configure Spirit to work on their obscure or less popular phone. And I make a change that affect them. Then I find out they've been a customer for a long time and I feel I'm supposed to help them. It's hard saying I can't support that phone, though Spirit worked for you before.

This is why I'm trying to distinguish more clearly what official or unofficial support means, and that extends to ROMs a bit too, I can't spend time working around bugs on ROMs that almost nobody uses either.

I'll try to add auto-detection for Omni ROMs, but I think you could edit /system/build.prop or something too. And after every ROM update, LOL.

Maybe eventually I will add FM Chip and audio settings, but the goal is to reliably auto-detect SOMEHOW so nobody has to ask what settings they need. And by making it this way, I'm forcing people to complain when a change is needed, so at least I'm in the loop of info needed for various phones.
[Spirit FM] thommcn:
I was just ROM hopping so to speak after reading about OmniROM on the XDA portal, it had nice feature of being able to slide Google Search in from the left, a gimmick I know but I do like my gimmicks lol.

Obviously with OmniROM being so new I wasn't surprised to see something wrong with it but it is disappointing that it is by design. I'm back on Cyanogen for now, Spirit2 is working perfectly on that. :)
[Spirit FM] pckloss:
Hi Mike.

I use Samsung i9300 on stock firmware 4.1.2 with Boeffla kernel which makes sound on radio much better than stock kernel (no background noise when listening with low volume). As I found radio on Samsung S3 worse than on my old Arc S (radio on Arc S keeps stereo to the very end no meter how strong is the signal is (even with distortions heard – to tell the truth radio is very resistant to distortions). I prefer radio working like that. Unfortunately I can’t say it about radio on Samy.

So I found your app. After month of testing I have another remark. I read your post concerning audio settings and I found your Spirit work on my Samy similar to stock radio (loosing stereo in the same conditions as my stock app). As I understand from your post from the beginnings of thread regarding Spirit1, in stock apps sound is usually set as “blend auto” or “switch auto”, resulting in loosing stereo when signal is weak. So in Spirit I set it to stereo but as I’ve mentioned Spirit works just like stock app, loosing stereo signal when weak. Yesterday I made some “research” setting signal to “force mono” and … nothing has happened - the sound was stereo as in was before I switched it to “force mono”. Then I restart app nothing had happened. Then I restarted phone without any change. So I presume this setting doesn’t work and I don’t why. I tried both in automatic and digital mode. Signal is stereo in both cases (when signal is strong enough).

I tried Spirit2 but it is still less sophisticated than Spirit1 (I like more customizations possible on Spirit1) but in my opinion stereo works on Spirit2 the same way like on stock app.
[Spirit FM] mikereidis:
Hi, Yeah, I see the same now on my GT-N7100 running stock 4.1.2, regardless of whether I use the Samsung OEM FM API and directly to the chip driver.

The code looks like it runs OK, just the Samsung FM driver ignores the mono force request. And the Samsung API has some error when requesting Mono.

Samsung has had a few revisions of the drivers, and some may be buggy, have features disabled, or just use different numbers and such.

I'll check this out on other phones and ROMs. Maybe this is a relatively recent change, because there are a good number of people who use force mono and I don't recall any or many reports that this is broken.
[Spirit FM] mikereidis:
Next release of Spirit2 has OmniROM covered for GT-I9100.

All the other supported devices were OmniROM "friendly" already: GS3, Note, Note2, HTC One.
[Spirit FM] pckloss:
Does it mean that "stereo set" doesn't work too on my stock 4.1.2 i9300 and Spirit uses stock settings "blend auto" or "switch auto" like Sammy radio app?
[Spirit FM] mikereidis:
Samsungs' with the Silicon Labs chips and API only support "Regular" mode and "Force Mono" mode. All options except "Force Mono" are translated to "Regular" mode on these devices. I think only Broadcom chips/APIs support the other selections, though there is some "tuning" of stereo mono thresholds etc. that could be changed for Silicon Labs chips, but Spirit doesn't support that at present.

This worked in the past, and I guess has stopped working on at least some devices, I think due to kernel issues which I may or may not find a workaround/fix for.

AFAICT, Spirit and the stock FM app suffer from this exact same problem, though I don't recall if Samsung ever made that option available in their app, and I don't have a stock ROM running on any of the 5 GS/Mote Samsungs I have now to check.

Spirit still tries to enable "Force Mono", but the driver and API are ignoring the request.
[Spirit FM] cpomari:
Nexus 4 Information

Hi Mike!

This app seems really good.

But he works in Nexus 4 with CyanogenMod 10.2?

Thanks!
[Spirit FM] LenAsh:
Nexus 4 has no FM Radio hardware, so no-go ever.
[Spirit FM] -G-Rey---:
Asus padfone 1st gen

Hi!

ASUS Padfone is also supported!
[Spirit FM] shaq1907:
LG G2 (Int. version D802) has radio hardware. But in Turkey it's disabled in default. You can easily enable it by rooting device and changing LGFmRadio.apk and LGFmRadio.odex file names to FmRadio.

I installed Spirit FM in unrooted device. I could see radio RDS news in app menu, but there isn't any voice I could hear with this app.

Do you think is there any way to enable radio without root?
[Spirit FM] royalhawk2002:
Hi. I tested today the free version of SpiritFM Radio on my S150 Pure Android (2.3.4) 2 Din car stereo, based on Samsung S5PV210 board. The app installs correctly, but when run I don't see any UI and I don't hear any sound. I played a while with "sound settings", without success. The stock radio of the unit is working nice, but has some bugs like AF not working. Probably the Radio module in S150 in not supported. I would like to ask to the SpiritFM developer, if he can add support for our radio modules.The radio module should be TDA7706. Thank you in advance.
[Spirit FM] LenAsh:
Even with root, I get decent RSSI (set to BCOM 43xx) but only a loud single tone from the headset. G2 D802.

Spirit2, as expected, won't even turn on.
[Spirit FM] mikereidis:
...

Nexus 4 FM antenna pin is permanently hardware disabled, like all Nexii besides the HTC Desire based Nexus 1.

Razr I w/ ICS 4.0 Spirit works, with a few glitches, but in JB update Verizon/Motorola disabled access to FM and I can't do anything about that.

Asus: I don't/can't support anything from Asus, I don't even recall any stock FM app for Asus devices.
[Spirit FM] mikereidis:
Gotta go, will answer other posts later.

Interesting,...

There's a new "LG G2" audio-> method setting in the latest Dec 5 version of Spirit1. I haven't released a free version of Dec 5 though.

I examined the LG G2 FM app to create the new audio-> method, but I couldn't get it working remotely on the testers device.

The LG G2 seems reasonably popular, and I've been starting to think I might get one if there was enough demand for paid versions of Spirit for it. But for now I don't have it and can't support it properly, and it would be more likely supported only when rooted/AOSP'd and only with Spirit2.
[Spirit FM] mikereidis:
No. Alcatel is almost unknown in the Android world, so I can't support it.
[Spirit FM] FiendFyre:
I have the LG G2 AT&T D800, and I can test for you want. I have a 2 week break coming up, starting after school tomorrow, so I'm pretty much free. I've been trying to get radio working, as the Snapdragon 800 apparently has the hardware for the FM Radio... Let me know if you need a tester!
[Spirit FM] mikereidis:
Yeah, if it was an all Qualcomm phone, root could enable audio. Eg. that can provide "unofficial support" for Verizon/Casio Commando 2 4G LTE.

But with other FM chips, it seems like almost every phone connects the audio to different ports in different ways, and often with a wide variety of audio chips.

Proper support means I need to buy the phone and test new releases on it, and I can only afford this, in time and $, on the most popular higher end devices now. Maybe I'll eventually see it's popular enough in the ROM'ing community to get one. I've had several requests now.
[Spirit FM] mikereidis:
TDA7706 is an interesting chip, with AM/FM/Weather and HD Radio.

But I'm not aware of a single Android phone with it, never mind a popular one, so I can't support it.

And even if I did, I'd still have to know how the audio works on that 2 DIN car device AND be willing and able to devote the resources needed.

I've looked at these devices, and pondered, but I have to limit myself to popular smartphones where the volumes sold are hundreds of millions.
[Spirit FM] FiendFyre:
Awesome, thanks! Would you support all LG G2 models? or just the few that people have asked for?

Just out of curiosity, because there was a thread somewhere in the G2 forums where people were trying to get the official radio apk to work, without success.