yashsingh1/xdaforums huggingface dataset:
[Spirit FM] mikereidis:
I did a bit of reading and you seem to be correct. :)

iBiquity's HD Radio is apparently protected by patents, which are public, and secret NDA'd details.

I found at least one reference to encryption, and if it's encrypted, then the DMCA may make it illegal in the US to decrypt. Perhaps the NDA also covers the encryption key(s). There could even be multiple keys in case 1 is leaked or otherwise discovered.

I think that just about anything can be cracked though, with who knows how much effort, but I wouldn't be surprised if a skilled person (with more skills than I, likely) could crack it within a few months.

Silicon Labs has a new-ish Si468x family of receiver chips, for FM analog, HD and DAB/DAB+. They are mostly a big DSP so effectively an SDR. The firmware (FW) has to be loaded from device storage every powerup, so the FW should be obtainable. Reverse engineering FW from this chip, or some other, may be feasible.

My first thought was that the FW could be encrypted with a key etched inside the chip, but then every engineer who has info on this chip might have the key(s). BUT,... encryption might be optional for testing and Silicon Labs could encrypt FW files sent to them from customers. But I don't even know if DSP programming is something they would allow customers to do. In the end, who knows ?

Just to complete the Si468x story, apparently it costs about $5. I wonder how much is iBiquity's fee.

And,... "The Si468x consumes 60 miliWatta in analog FM mode and less than 95 miliWatts in HD Radio and DAB/DAB+ modes." So digital sucks more power.

I wonder if iBiquity will get any phone OEM to install one of these, or similar, soon. $5 for a radio chip seems like a lot and the extra power draw is a drag in battery powered devices.
[Spirit FM] mikereidis:
See next post/page for "Nexus 5" info.
[Spirit FM] mikereidis:
Service manual has leaked for LG-D821 / Nexus 5 / Nexus 4 2013 / The next Nexus.

Looks authentic.

I absolutely have never and still do not think it will be OTA FM capable.

To remind, the only FM capable Nexus ever was the now very old Nexus One (HTC Desire derived). And even then it required at least a custom non-stock kernel in order to setup FM audio routing. Google hates and has never and will never support FM, IMO because they have advertising and music services that compete with it.

So,... the service manual MAY have some positive FM signs simply because LG may sell a slightly modified version with FM, as they did with the last Nexus and Optimus G.

Funny that FM Radio: Yes is listed under Software Features, but not Hardware Features. But some other specs are clearly wrong too, like some mentions of Bluetooth 3.0 when we know it's 4.0.

FM/BT/WiFi combo chip seems to be Broadcom BCM4339. Very little is known about this chip yet, in fact I had to search to find some indication that it MIGHT support FM.

Unlike with the Optimus G, schematics show no indication that FM antenna connection to the wired headset jack might be possible. The BCM4339 FM antenna pin seems to be floating, connected nowhere, but schematics can be wrong in this area I've seen.

FM audio output pins are also shown floating, but that shouldn't matter I think, because FM audio is likely available digitally over the same connections for Bluetooth.

One positive note is that some FM power supply pins are connected to a voltage regulator output from the same chip. Why would FM power be needed unless FM was an option ?

So, who knows ? But I severely doubt FM will be possible, except perhaps on non-Nexus LG variants.

It will likely be possible for someone to run Spirit on the new Nexus, WITH root, and see if RSSI is negative or 0 as expected. Due to recent Android Bluetooth changes though, a test would require either that (1) someone manually kill all Bluetooth processes (BT is always on these days), or (2) try my Debug-> HCI Access setting of Bluedroid Shim, and rebooting, AFTER acknowledging there is an (IMO tiny) risk of that doing something "bad" & requiring a reflash or whatever.
[Spirit FM] atroph:
Hello dev,

I just purchased your app and it works great for what I need. I have a HTC One M7SPR running Cyanogenmod 10.2 (latest nightly)

I wanted to add to this post you made. It seems as if when using the 4 connection headphones the app works as it should switching from headphones to speaker. When closing the app all speaker (and microphone) functions go back to normal.

(Stock HTC One Headphones w/ integrated button and microphone)

Now if you use the 3 connection headphone jack here is where things don't work as they should. Audio works fine coming out of the headphones, but when you try to switch to the speaker it doesn't change (as noted earlier). I also noticed that It breaks the microphone and only outputs sound from the earpiece vice re-enabling the speakers. A simple reboot is all that is needed to fix the issue. I have tried various settings to no avail.

(Sennheiser HD202 Headphone Jack (Generic 3 connection Jack)

Love the app!

Sorry if this had been covered before, I am reading on page 660 :)

Enjoy your break!

Edit: Using debug> Restart Media keeps me from having to reboot. RIF!
[Spirit FM] mustasusi:
You don't even have a clue how different they are. OEM Proprietary has not much of effect on Analog except it won't allow to play without headset plugged in. It will give you that message to plug. if I unplug while playing, it would stop and I have to re-plug then restart program [I need the ability to play without headset because I figured out when I pull the plug half the way out, it improves the reception incrementally, putting it closer to my Note1 I previously owned]. On Digital it'd be balanced but sound is duplicated, like an echo, however, it sounds fine in the actual record.

Anyway, I moved to 4.3 version there I can no way record in (((]Stereo[))), not to mention the lower volume levels. February 27 was my lucky charm on 4.1 but won't be much of help anymore in 4.3, despite its ability to record Analog PCM over newer versions. But now Mediarecord no longer works [stays 0.0KB size] that was the only way I for me to trigger stereo record on PCM. On newer versions I found out of more record sources added regarding to new devices released by the time being. Changing source to Sony 422 would allow mediarecord method [be heard left channel only], but no PCM recording on newer versions ever since. On Digital I got the closest and nearly satisfying results, of stereo sound but fairly imbalanced, heavy tended to the left. The problem is that it wouldn't persist for a mysterious reason. After a few more launches the digital sound becomes balanced but mono, thus recording the same.

OEM Proprietary you may ask? Analog not much of a change, digital is still echoed and still records mono.

To sum it up, I believe you're going to have more hard times and headaches when getting into 4.3 standards.

P.s. What about Galaxy mega 6.3? heard anything about this device or happened to put your hands on one? AFAIK the i9200 has working radio out of the box, even though most technical specs state it doesn't (but I believe they don't differ between 9200 and 9205). Anyhow, you can find enough evidences all over the net.

Edit: Here's a video of me playing with the headset plug to increase reception:

http://www16.zippyshare.com/v/7269677/file.html
[Spirit FM] mikereidis:
Yeah, ideally all 4 pold headset jacks would fully support 3 pold plugs. But no phone comes with 3 pole plugs, always 4 if there's a wired headset included. And I'd bet the support people would say they only support their own headsets, with 4 poles.

I'm not sure anyone has ever reported a 3 pole problem, but I think their usage is pretty rare and my easiest response is "If it don't work, I can't support it." ;)

Do you have Spirit Unlocked ? If so, are you using Audio-> Method = "Digital Auto" ? Any difference from "Automatic" which is non-digital ?

Yes, the purpose of Restart Media is to workaround difficult problems such as this. It's only restarted when FM is turned off. I originally restarted for mute too, to fix no audio on interrupting incoming voice calls. But the restart usually takes too long and it doesn't work.
[Spirit FM] mikereidis:
Yeah, that's the main limitation of the Samsung API. The stock FM app has the same "problem" (or feature), although it recovers better than Spirit.

Some trivia: Same thing happens when battery is below 3-5% or so, to save battery. Nobody ever seems to have noticed/reported this.'

Standards ? What standards ? Google doesn't support FM at all so just about nothing FM related is directly co-related with the Android version. Indirectly yes, since HTC DOES change things sometimes on new Android versions for specific phones.

Spirit has had a pretty good record in supporting new versions of Android without any changes from me. The problems with "new versions" have been mostly due to changes in CM (or other) ROMs or the chip or phone OEM APIs.

I dunno. The majority of interest I've had from owners of phones like the Mega, has been from lower income parts of the world that doesn't have free funds for apps. And even then, the interest so far has been small.

I look at the numbers of posts and threads in the XDA section for a phone to get a feel for phone popularity. And less popular phones get little attention from me now. There are thousands of different Android devices out there now and I only have resources for the most popular higher end devices among 1st world Android enthusiasts.

I've heard that the Motorola Bionic gets a better signal on speaker than on headset, despite the headset plugged in for both. My guess is that lower impedance headsets can reduce signal from the headset ground wire.
[Spirit FM] atroph:
Thanks for the response. I am using Spirit UL

The only difference I can discern is the volume (increases by some factor when using digital) and a slight bit of fidelity from switching from analog to digital.

I believe I messed with most of the functions in regards to the audio output stream and didn't result in much luck getting audio to revert to its original state once the app was closed (before I found the debug fix). Then I investigated further and discovered that the 4 and 3 pole connectors are handled differently. After I purchased the app I was using the 4 pole and it worked flawlessly. I then went to my garage to do some work and hooked my phone into the shelf stereo system with a RCA to 3 pole wire. That is when I noticed the issue. I went back upstairs to grab my 4 pole headphones and noticed that the app behaved correctly.

As for the 4/3 pole issue I think I will just chop off the plug and a little wire if I want to use the speakers (on rare occasions).The stock headphones that came with my one are terrible and obviously a low budget item. i normally use a 3 pole plug to connect to my car or a set of aftermarket headphones like the Sennheisers I mentioned above. I will continue with the debug>restart media fix as it seems to be working fine. I did notice that it FC's the cyanogenmod DSP when media is restarted, but I believe that the DSP restarts on its own when a new audio stream is routed (theory).

Not asking for a fix, just wanted to share something that I didn't see mentioned in 30+ pages :)
[Spirit FM] mustasusi:
On Spirit? I haven't noticed either! I'll check it as soon as I get 5% on my large capacity battery...

No, I'm not talking about CM\AOSP\AOKP ROMs. I'm talking about Sammy based 4.3 version, leaked beginning of this month. Has Sammy stock radio and nothing has been changed but the icon:

I'm into Sammy based ROMs because they tend to be more optimized for my device in terms of battery life & functionality.

On 2nd thought - forget about the Galaxy Mega. It has no selection of custom ROMs AT ALL!!!

I use Koss Porta Pro that claim to have 60ohms. It's true that older devices receive better. Remember the old Walkmans? ;)

Another problem I forgot to mention is to record when screen is off - impossible! It skips 99% of time length for example, I tried to record a full broadcast of 54 mins with screen off, checking the record reveals only 30 secs or so, where every second it skips in steps of minutes! Is it something to do with AF period too? I set to 30000 but no luck at all...
[Spirit FM] jaikiratseth:
doesn't work on motorola atrix 2
[Spirit FM] mikereidis:
No app can.

You can "thank" Google's Motorola for intentionally killing FM in hardware on pretty much every device after the Bionic.
[Spirit FM] mikereidis:
Please post instead of PM'ing.
[Spirit FM] mikereidis:
Please post instead of PM'ing.

In fact I'll disable PM's for now, which means I can't send them either.

I'm not here to provide free, private support or consulting services.

Within the next few months I will be releasing some sample source code for "Spirit2".

It it based on the ST-Ericsson proposed Android FM API, which works as is on most 2012+ Sony devices, though audio has changed.:

ST-Ericsson proposed Android FM API:

Underlying code here: https://android-review.googlesource.com/#/q/owner:benn.porscke%40stericsson.com+status:open,n,z

Sample app here: https://android-review.googlesource.com/#/c/21829/

Very old docs here: https://groups.google.com/forum/?fromgroups=#!topic/android-platform/eFhxfsxqIMc
[Spirit FM] 089man:
Hi Mike, since last update spirit I have freezes if I used spirit. Have pay version, Samsung s2 and Android 4.3.used dori kernel. Have test any kernel versions, but spirit runs for a while, than frezzed the phone.

Any idea?

I9100 Tapatalk 4, Rom1 Pacman Android 4.3 / Rom2 Test only, Dori Kernel for. 4.3
[Spirit FM] fabio_jorge23:
I'm having a hard time to find the libraries for ST-Ericsson... Were can I find them?
[Spirit FM] mikereidis:
What are the library file names you are looking for ?

The libanalogradiobroadcasting.so library source code is here, as posted: https://android-review.googlesource.com/#/c/20507/

But libanalogradiobroadcasting.so should already be installed on Sony 2012+ devices in /system/lib .

The only other directly FM related low level Linux library you need is the plugin library for your FM chip. For 2013 Sony's this should be libfmradio.iris.so and it should be installed in /system/lib .
[Spirit FM] mikereidis:
I think at least one other person reported problems with Dorimanx kernel recently.

If Audio-> Method is set to Digital, then "a lot" of code gets run every second. This can massively increase the rate at which kernel bugs become apparent. IE, it's a stress test.
[Spirit FM] mikereidis:
LOL, In case you wonder why some crappy apps have good reviews:
[Spirit FM] James Bottomtooth III:
People actually pay for that?! :what:
[Spirit FM] saumar:
Oh fu**in' Hell...is that a joke Mike? Who would have ever expected ... I did not think that there was this kind of business for these things .. anyway I'm glad you have not accepted and you made this public although most likely this thing will not make happy these "good" guys :thumbup:

Inviato dal mio GT-I9070 con Tapatalk 4
[Spirit FM] atroph:
Wow what a crock....

There is always someone who wants to sham the system. I assume that there are people that do take advantage of their services if it is legit. Then again I don't really trust any offer that has such poor grammar.
[Spirit FM] agantai:
amazing app ,working 100% thanks very much. :good:

by the way can you save radio stations into favorites ? i can't seem to find the option.
[Spirit FM] saumar:
I think you can do that simply pushing any number inside main screen of spirit :sly:

Inviato dal mio GT-I9070 con Tapatalk 4
[Spirit FM] agantai:
nope no option there,although it would be great to be able to save the channels i can live without it,i'm grateful the app is available in the first place.
[Spirit FM] mikereidis:
Presets are not available in the free versions of Spirit. Trying to use the blank preset buttons near the bottom of the screen pops up a quick message about this.

Spirit Light, no longer sold, supports 6 presets.

Spirit Unlocked supports unlimited presets which can be arranged in an unlimited number of preset lists.
[Spirit FM] agantai:
i thought so,thanks for the useful reply. :)
[Spirit FM] mikereidis:
Yes. Higher rates for fake reviews from people with good English and if they have to think up good reviews themselves.

I'm surprised actually at the 3 posts of reaction here; I thought it was common knowledge that things like "astro-turfing" are not uncommon in our greed driven world ( http://www.catb.org/jargon/html/A/astroturfing.html ).

This is partly why Google went to app reviews that publicly identify the reviewer.

I've had quite a few previous emails like this over the last year; this is nothing new.

Outside of niche app areas, such as mine for FM, the competition to be one of the leading app makers is fierce. Having a 4.6 rating isn't good enough when others have 4.7 or higher. Everybody wants "the best" and not second best.

Every app sold or downloaded makes the app higher in the popularity rankings. Reach a certain point and your app will be identified and promoted by Google as a "top app". And THEN the money will flow much faster. The difference between 1st place and 2nd, or 3rd-10th or whatever can have a huge impact on income.

I think fake reviews are more a problem for new apps without many users yet. And many can be identified by the bad language skills and the fact they say almost nothing except "Great !!! A1 !!!". LOL.

I normally don't post anyone's email, but spammer emails are more than fair game; I got a 2nd such email on the email auto-replied for my main email.
[Spirit FM] rucxy:
I would've thought that it would be illegal or anti google rules to misrepresent apps in this way as technically (maybe) is a form of fraudulent behaviour and anti competition. And last but not least is lying. Mind you the world isn't about service as much now as it was, but how much money can be sponged out of the consumer.
[Spirit FM] mikereidis:
It violates Googles' terms of service and that's all, so worst case they get their developer account disabled, or just a "stern talking to".

Many company "Customer Service" departments were long ago more accurately re-named "Customer Management". They don't Serve the customer, they manage him, and his complaints etc. They tell him to fill out a complaint form or bug report in triplicate and wait 3-4 weeks. Then tell him the paperwork is lost. Hopefully he goes away.

As far as much of the business world goes, "rules are for suckers".

Same in government and other bases of power.

We now know, for SURE, that the "5 eyes"* are monitoring just about every bit we send & receive on the Internet, and just about every phone call. And we can say it with a straight face, referring to all the reports in the worlds' press, without being called "tin foil wearing conspiracy nuts".

*5 Eyes: The US, Canada, UK, Australia, New Zealand, and likely several invisible eyes.

We are slaves. To the System(s), to Government and to many forms of taxation.

Back in the 1950's and 60's we were told to embrace progress, and work hard, and that in the future, our biggest problem would be deciding how to spend all our free time. It was to be a world filled with computers and robots that would do ALL the boring, repetitive work.

What a crock ! We were lied to. Our standard of living has depleted considerably since then. Now 2 parents must work, with longer hours and constantly available by cellphone and tablets and computers. And the commute to work just gets longer and houses get more expensive and jobs get worse.

We are still constantly being lied to.

Everytime they pass a law that has a nasty purpose and call it "The Nice Purpose" or "Save the Children" act, that's a lie. "War Ministries" become "Defence Ministries". Seems like everybody does defence and nobody fesses up to offence.

LOL.
[Spirit FM] mikereidis:
Samsung's customers are usually NOT end users.

Samsung's customers are the carriers: Verizon, ATT, etc.

The carriers want you to use wireless data plans for streaming, and want to control access to media. FM does not help them.

Except for Sprint, which has a $15 million deal with broadcasters: http://xdaforums.com/showthread.php?p=37641690

Verizon and ATT may be demanding MUCH more than $15 million.

And Google hates FM because they have competing advertising and music services.

Maybe.

Google is somewhat "close" to the carriers, and some of their interests align. Google has Google ads. You see them in many streaming apps. Google has Google Play Music and "All Access" streaming in some countries, and sells music tracks on Play too. They don't want you recording from the radio or listening to music for free...

No. Pretty much EVERY phone, including all Samsungs, has a combination chip that handles FM and WiFi and Bluetooth and sometimes GPS. All on one chip.

The phone manufacturers disable the FM chip antenna connection, and save a penny or 2 on a few tiny parts.

Note sure what you are asking. But Samsung has virtually no Galaxy S/S2/S3/S4 or Note/Note2/Note3 class devices sold in the US with FM. I believe the carriers say "No FM" and Samsung obliges. HTC is much better at ensuring their phones have FM in the US and everywhere. But grinchy Verizon managed to kill FM on their version of the HTC One.

HTC One from anywhere/anyone except Verizon, and most other HTC devices. Sony is good also.

Maybe. Rumor is that International (non US) GS5 and Note4 will have FM radio return, but who knows ?

None. It's just not physically possible on the GS4 or Note3 from anywhere.

Sony has some nice Bluetooth headsets with built in FM. I have an MW-1.

:)
[Spirit FM] rucxy:
Truncated.
[Spirit FM] xmguy:
Now I know not to go by the ratings alone. Without "honest" reviews people don't know "what" they're getting! Mike being honest some people that rate your app are dumb and don't know what they need to use your app. You're a great and honest Dev!

Sent from my (Verizon) Samsung Galaxy S4 using the XDA app!
[Spirit FM] notbirth:
how about sharp sh-02e

japan phone
[Spirit FM] saumar:
:what:
[Spirit FM] CresCoJeff:
How does Spirit FM Unlocked work on unrooted HTC One?

Hi Mike,

I just bought and installed Spirit Unlocked on my stock-ROM, unrooted HTC One and it works perfectly -- may I ask how you managed that? You mentioned earlier that the HTC One's broadcom FM chipset driver works through /dev/ttyHS0, but only the group Bluetooth should be able to access that device. Is there a workaround that lets third-party apps work with that device, or is there another way to receive FM on the HTC One?

Congratulations on an amazing achievement!

thanks,

CCJ
[Spirit FM] mikereidis:
:)

Stock ROMs that have, or that can support, a stock FM app have at least one non-root API that the stock FM app uses.

Spirit supports the most common stock "OEM proprietary APIs": Broadcom, Samsung Silicon Labs, Qualcomm, Sony, Motorola and Texas Instruments. Four of of these 6 "high level Java" APIs were painstakingly reverse engineered, in addition to the low level APIs that require root and are needed on AOSP based ROMs.

On all stock HTC Ones (except the neutered Verizon & GPEs), the Broadcom OEM proprietary API is present, to support the Broadcom FM/BT/WiFi combo chip used. HTC also has their small little HTC specific FM audio API.
[Spirit FM] jwhood:
Hey mike just inquired a htc dna and your app wont work any suggestion or did verizion do the ole we will block till we can make millions of $$ off of it???:p
[Spirit FM] Tfranc:
Hi,

I´m having some problems when i start to compile the program on eclipse, because android.hardware.fmradio package, it sais:

private FmReceiver.OnScanListener mReceiverScanListener; -> cannot be resolved to a type.

Can you give me a hand please?

Best Regards
[Spirit FM] baggino:
if I lower the volume because I change the radio frequency? where I can intervene to lower the volume?
[Spirit FM] mikereidis:
Yes, Verizon killed FM on the Droid DNA too. In hardware. Unfixable. AFAICT.