yashsingh1/xdaforums huggingface dataset:
[Spirit FM] mikereidis:
Long gone, like the 5 cent cups of coffee my grandfather used to buy, albeit in "Internet time". It served it's purpose as a "peace offering" when I reduced the free version features.

I've experimented extensively with pricing, as documented right here in this thread, for anyone caring to search. Funny thing is that my total income stayed relatively stable despite price. But low prices meant I had tons more support to do and even less time to do development, never mind spend time with my family.

So I settled on an Unlocked price that was about 50% of what people would give when I accepted donations. And a price I felt was a psychological limit and not too different than the cheapest "half decent" physical FM radios.

Thousands of customers is what I have and "MANY" new ones every day. With income enough to keep me going, albeit about 50% of what I can make selling my time to corporations on a longer term basis.

$10 US ? That's a few fancy cups of coffee for many people, or one fast food meal for the average male Canadian or American.

How many dollars a month do data plans cost ? Here in North America at least they can easily cost $30+ a month, and lots of streaming could probably cost many people an extra $10 per month. Many phones are in the $500-$1000 range outright and some change their phone every year.

The app and support are yours for "life" on as many devices as you own now or in future. So far my first customers have seen over 200 updates to Spirit in the last 2 years, adding new features, fixing bugs and working around various problems that crop up in thousands of ROMs.

And I'm promising a free update to Spirit2, for any Unlocked user who will desire a free update. Spirit has evolved from a MUCH worse looking app only supporting HTC Legend on CM7 to supporting hundreds of phones and who knows how many ROMs. On the most popular phones it now supports digital audio for Bluetooth, recording, equalizers, visualizers, etc. The only stock manufacturer FM app that matches or comes close is the latest Xperia Z FM app from Sony.

And there's a guy here every day in this thread answering every question as best as possible, with email support usually within 12-24 hours and often within the hour.

$10 is next to nothing in a field where good contractors can make $50-$100 per hour, even for longer term projects.

And how many paid app competitors do you see rushing into the Over the air FM app business ? In the last 2 years ?

Well then, presumably the Free version is fine for you then, or the free Spirit2 alphas on Galaxy Sx class devices.

I've had thoughts about the monthly subscription model. But I think most clear thinking people would rather buy an app once for $10 than rent it for $1 a month. Hourly time based usage doesn't seem much better.
[Spirit FM] elevul:
No, I'm not going to accept Mono audio, since one of the reasons I rarely listen to radio is because I'm an audiophile.
[Spirit FM] bramar:
Huawei Ascend P1 JB 4.1.1

Hello Mike,

I have a problem with Spirit UL Application. I've installed March 6 on my Huawei Ascend P1 with Jelly Bean 4.1.1 and I saw that everything is working except that I have any kind of sound nether on Headphones nor Speaker. I can see frequencies, RDS is working, search is working but no sound. Can you help me? Phone is rooted.

Thank you. :laugh:
[Spirit FM] mikereidis:
I'm afraid not. :( Enabling FM audio on most Huawei's is a mystery.

And even if it was known, I have little interest in supporting phones, brands or countries with what appears to be an over 99% piracy rate. It would mostly result in me getting many more pirate debug logs than the 10-20 every day that I already do.
[Spirit FM] Quinny899:
Just wondering, do you ever reply to those who pirate?

Personally, using Google Merchant Widget, I can tell who buys and subsequently refunds more than one of my themes/apps, and so I email them to ask what's wrong, because more than one is probably a pirate. I've got no replies yet, but I betI will one day
[Spirit FM] mikereidis:
Yes. :) When confronted there are about 3 main excuses I hear: (1) I got ripped off once, so I test before buying, (2) The phone came with this app from previous owner, (3) I just found it online and didn't know. Occasionally I hear it was on the ROM and I ask for ROM info. In a few cases I've shown up on the XDA ROM thread and I report; The mods remove the ROM download and in some cases have frozen a thread.

I recently found that the user can't cancel a purchase the 2nd time. This must have changed within the last 2 years. I always cancel if asked; in one case a guy asked for his 3rd cancel. I gave it but told him no more; if he comes back it will be my first refusal.

My estimate is that 20-50% of the people posting about problems in this thread are pirating. I have a new tactic for that now. If a problem on this thread becomes complicated to solve, I ask for a debug log. Somewhere around 30-40% of those cases result in my detecting that they are pirating. Some are smart enough to only send a Free version debug log, and I can't detect those, unless they are having a problem with a paid version specific feature.

A common problem is that they have an older version of Spirit. This explains why pirates have more problems than customers who usually have the latest versions. Custom ROMs move so fast that the January versions of Spirit aren't working for many people. In particular, CM added a broken FM library I had to account for.

So the pirates, who have older versions and aren't getting much support, think Spirit is crap, and they are thus justified in pirating, LOL.

Continued in next post, making dinner...
[Spirit FM] mikereidis:
So, besides the surprising number of pirates who post here about their more difficult problems, I get a lot of debug logs and license requests emailed to me from pirates.

I've presumed that's mostly because they are just poking around in the Menu's and accidentally send a log. But the logs are usually around 2 megabytes and take around 20 seconds, plus the email time and someone pressing Send. So maybe they hope I can fix their problem and/or support their phone.

Most of these logs come from China around 08:00 - 15:00 or so GMT. I've tried various responses and lately usually just delete the Chinese ones. Recently to Western-ish countries I've been replying, with no text but WITH the attachment re-attached. So if nothing else I'm annoying them a bit and wasting some bandwidth. I was surprised to get 1 response from China, basically asking in Chinese why I emailed him.

Other things I've tried include sending warnings about the virus infested version I claim they have (they may, I dunno) or just a notice that I can't support pirated versions. I've had a few responses and a few customer conversions from that. I've even had a few people mention they purchased after feeling guilty about pirating.

I've tried to become more diplomatic, because very occasionally I misinterpret the signs. Those with an older version are USUALLY pirating, and there are some other clues. This is roughly what I currently use:
[Spirit FM] Quinny899:
This is what I'm trying to do with a root app (theme chooser theme)

As you run a root app, there are ways to make it so called "un-crackable":

First you do the simple stuff, delete the odex file for the app in /data/app. They're highly unlikely to be there except for cracking reasons anyway

Basically, you hide an unpatched version of the app in your app, as a png or an xml or even a fake lib file, and extract it from the apk when the user opens it

Then you set it to install on-top of the current one (pm install -r <apk>) [Needs root] on a reboot. Might result in about 3 seconds of lag on boot depending on the device, but it will reset the app and the dalvik cache file, thus flawing 2 things that apps like LuckyPatcher try

Obviously, before it installs the apk, it could do an md5 check, and also, it doesn't even need to have the .apk extension to install.

And then, obfuscate your code. Don't want smali crackers now do we ;)

Finally, when the user opens the app, do a licence check. All crack methods should now have failed but cracking the market itself, and I'm looking into checking that

If it fails, decide what you want to do. I run a pm uninstall of the app, which might result in a few interesting emails/reviews of "YOUR THEME DELETED ITSELF!!!11111!!"

Nb, if the licence check shows internet fail, it waits until reboot. I might implement a check in the future that counts until 10 and then uninstalls, as they might be blocking the internet permission

Anyway, that's my theory. Haven't got it working yet, Theme Chooser doesn't like it
[Spirit FM] yairku:
Mike, I gotta say it again.

You are the man!!!
[Spirit FM] elevul:
You do realize that quite often pirating is free advertising? That "I don't buy before trying" thing is not an excuse, it's a legit reason...
[Spirit FM] Quinny899:
Re: [APP] Spirit FM: Broadcom,Texas Instruments,Samsung Silicon Labs & Qualcomm FM ch

That's what the 15 minute refund (and the 24 hour no-quibble refund I do) are for. Buying, backing up, refunding and restoring is not needed to try it
[Spirit FM] mikereidis:
:)

I felt I had to assume the possibility of no Internet access, and various other problems, so I created a license file mechanism. The worst/busiest crazy week I ever had with Spirit was when I made it an easy push-button email request for a license file. I processed, by "hand", taking 2+ minutes each, over 1400 legitimate requests. I stopped tracking pirate requests after 2 many, and they were worse because they took more time.

Since I abandoned my anti-piracy measures 6+ months ago, I've adopted what was Microsofts' very unofficial internal policy of the 1990s: More piracy in the end translates into more sales.

But the technical challenge is interesting, and it would be very useful to get statistics on how much income might grow (or shrink) with better anti-piracy.

I read everything on that "best cracker site" at least twice and thought I could do pretty well against them. But after analysing the mods they did I saw they found the few crucial places to bypass checks pretty easily.

I had a scheme to check the APK for mods from rather unusual code in JNI, but it was fragile I think so never enabled it. There ARE a few paid apps out there that do LOTS of tricky, interconnected stuff between JNI and Java and have been successful in keeping crackers out.

But I also consider that spending too much of my own time on these schemes ends up effectively penalizing legitimate customers, just by taking my time.

For Spirit2 I might consider something, as long as it's easy and doesn't inconvenience people. But the above probably means it will never move into code. In a way the main thing I sell is support and there are easy ideas for that, and they can actually improve the app experience.

For Spirit1, frankly I'm getting p'd off lately with support requests on this thread from pirates. And the emailed debug logs from China continue.

So I might make Spirit work ONLY on devices from manufacturers I officially support: Samsung, HTC, Motorola, LG, Sony, Dell. And the associated audio methods for other OEMs will be removed too. Let them figure out how to add code back or write their own drivers, LOL.

It will be easier just to say "I don't support that brand" and there will be very few sales lost. As usual, the few existing customers with those other brands are welcome to keep using an old version of Spirit or getting a full refund. Spirit1 offers no promises of new features at this point anyway, just bug fixes.

Spirit2 uses a fresher approach. I will only support, and it will only work on, a handful of higher end & very popular devices. Those with more expensive phones are less likely to pirate, plain and simple. Maybe it's only a 2-3:1 ratio, instead of the usual 10:1 or 99:1 in certain parts of the world.
[Spirit FM] mikereidis:
I understand. Description of Spirit on Play has included for a long time:

Checking the app ratings, and a few reviews should hopefully put to rest any concerns about me not honouring that pledge. I hope; I actually haven't read any of my reviews in quite a while now; I should and used to, but there was a small percentage that really bugged me, so I stopped.

I've cancelled orders over a year old. That's how I do upgrades for the price difference, or any no answer required cancel.

If you can find a pirate copy, you should also be able to find this thread, with all the info within, hopefully enough to understand. And to try the free version.

And, if you are still reading, anyone can email me anytime (no PM) and get a copy of Unlocked emailed to try as long as you want.
[Spirit FM] cajunflavoredbob:
Never thought about asking for a refund on the cheaper version when I bought unlocked. It was a great enough app when I bought it, that buying it again didn't phase me one bit. You're entirely right that the support for this app is "above and beyond."

Considering how difficult it is to figure out all the many devices out there, and add FM support for many of them without any official support, it's insane from an outside point of view. I wouldn't be able to handle it, were I in your shoes.

I've had Spirit FM for a while now, since I was using XDAndroid on my HTC Rhodium. Moved on the the HD2, then a few other devices during 2011-2012 where it seemed like a race to build the most phones from every OEM. It's worked flawlessly on my Sensation, G2, a couple tablets, and, most recently, the Deft XT.

I was shocked that you took the time out to troubleshoot a completely unsupported device and actually got Spirit working almost flawlessly on it. The Defy is my second line, but it's mostly used as my FM tuner on my desk.

So, for all you've done with this app, and all you've dealt with, you've got my highest thanks, Mike. You're a stand up guy.
[Spirit FM] mikereidis:
:) You can still get Light refunded, any time you want, but it's not mandatory, LOL. My approach with Spirit2 will be "I'll cancel Unlocked if you ask, but if you feel you've had plenty of value from Unlocked for 1-2 years or whatever, please consider not asking for a cancel". I also understand people in some countries work much harder for a $ and I've never dropped prices in those countries to compensate (Because 10-20 minutes of support is still 10-20 minutes of labor, in a country with first world living costs.)

And nobody else has even tried really. And unfortunately the craziness is showing more and more. On some devices, especially with stock ROMs there are still many awful problems and I'll never have time to fix them. Trying to support 11 different APIs has been difficult, but I've learned a lot, and Spirit2 will be more focused and better for it.

Tablets ? Note, Note2 and Dell Streak are the only "tablets" I'm aware of working, stock FM app or Spirit (besides hopefully Sony Xperia Z), and all about 5".

:)

Well, that's great, but I hope people understand I can't do that so much anymore. I have to focus on the most popular phones and ROMs now.

When I started Spirit 2 years ago, it was more feasible to support almost all FM capable phones. Androids' huge growth since then has made that an infeasible task.
[Spirit FM] elevul:
Re: [APP] Spirit FM: Broadcom,Texas Instruments,Samsung Silicon Labs & Qualcomm FM ch

But why? Are the various manufacturers using different FM radio chips?

SlimBean 4.2.2 on GT-N7000. Smooooooooth!
[Spirit FM] mikereidis:
Yes. Look at the thread title. First part says "[APP] Spirit FM:"

Second part says "Broadcom,Texas Instruments,Samsung Silicon Labs & Qualcomm FM chips".

That's 4 chips, and except for Silicon Labs, they're all pretty much publicly undocumented, except for some source code here and there. I can also support ST-Ericsson CG2900 FM chips on Sony devices via the proposed Android FM API.

And there are multiple APIs to deal with these chips. For stock un-rooted devices there are 6 higher level Java APIs I support, that are all undocumented and proprietary except proposed Android FM API:

- Sony/ST-Ericsson proposed Android FM API.

- Samsung's Silicon Labs FM chip oriented API for high end Galaxy S/S2/S3/Note/Note2 etc.

- Broadcom Proprietary.

- TI Proprietary.

- Motorola API used with TI chips that most Moto's have.

- Qualcomm proprietary (but at least with open source).

Low Level APIs that usually require root, and work at the lowest level (kernel driver APIs) to allow use on most custom ROMs (this doesn't include the different ways to access HCI):

- Samsung's Silicon Labs FM chip kernel driver API.

- Broadcom HCI API.

- TI HCI API.

- Qualcomm V4L with extensions.

So that's 10 APIs and 5 FM chips covered.

Spirit2 will/is focusing on 1 API, the proposed Android FM API, even if I have to write the drivers/plugins myself, as I've done for Samsungs' Silicon Labs driver.

And so far Spirit2 is just targetting 2 chips, the 2 that seem most important this year on high end devices (HTC One aside).

Hopefully the Galaxy S4 details will be available about FM soon, and hopefully the news is good. :)
[Spirit FM] cajunflavoredbob:
I don't need a refund. The only time I would ever ask for a refund on an app I purchase is if it plain out doesn't work, or doesn't do what it's supposed to. It was a worthy upgrade.

Spirit Unlocked works on my Lenovo Thinkpad on the stock ROM, but not on CM10. Not a big deal, since I don't use it so much anymore. My old A500 worked on one of the CM10.1 ROM, but I sold it shortly after, so I didn't test on stock or anything else.

Any thoughts on the Xperia XL in terms of FM support? It's probably going to be my next phone.
[Spirit FM] mikereidis:
Galaxy S4 GT-I9500/9505:

This is possibly the only new phone I'll be buying this year, after 4 high end phones in 2012, 2 in 2011, and another 12 or so past their prime in both years.

I haven't clearly seen an FM app in any pictures or video, but indications are that there is FM, in the International Exynos 5 Octa GT-I9500 variant anyway.

EDIT: None of the hands on videos shows an FM app in an alphabetical list that should include "FM...". My guess is that the FM app isn't ready yet, and/or the demo units are Qualcomm LTE variants with FM disabled.

It appears there is, as usual, a Qualcomm LTE GT-I9505 variant for the US and some other countries. FM for these is unclear. Con: US Sx variants have never had FM, Pro: US carriers may be paid by broadcasters to enable FM.

It appears the S4 will use a BCM4335 combo chip for 802.11ac and BT4. It's difficult to trust early wordings of info articles but it seems as if this chip may also be used for FM.

Samsung has never before used Broadcom FM chips in their highest end devices: GS/GS2/GS3/Note/Note2. They've always used otherwise almost unknown Silicon Labs SI470x chips. And this has been despite that all these devices use Broadcom combo chips for WiFi and BT. They've always just left the antenna pins grounded to disable the FM.

So, Broadcom FM would be a major shift for Samsung on the GS4, and it would give me reason to support this chip in Spirit2. There's no other current high end device out that uses Broadcom for FM, other than the coming HTC One.

This shift to Broadcom, and the likely use in all GS4 variants, provides hope that all variants will be capable of FM.

The BCM4335 appears to be receive only. No transmit. Frequency range is likely about 65 MHz - 108.

I hope the 4335 chip can also support direct digital FM audio, at various sample rates and bits. But if so, there is likely reverse engineering to do to work with it.

Broadcoms' continued "design wins" in high end devices have me questioning the success of Qualcomm combo chips. Qualcomm SOCs and BPs/modems are doing very well, but there must be some reasons why the "integrated" WCN36xx chips are being passed over.

There may be connections between this and Broadcoms' role in the rewriting of the Bluetooth system in Android 4.2.
[Spirit FM] mikereidis:
How is it that this is the first I've ever heard of Spirit running on these 2 tablets ? Somebody emailed me saying a Toshiba tab worked but he never responded to my request for more info. And it's done reasonably well and has been out for a while, but I only recently found that the Asus TF101 FM "works", but without audio.

My best theory is that most people with a tablet don't care about FM. And that must be why most manufacturers don't bother with FM on tabs. Perhaps it's because tabs are used at home where there are physical radios ? I've had several Nexus7 requests, but that was a smaller and very well priced bargain tab that's sold large numbers.

Now that I think of it, I've had more requests for the Nexus4 than the Nexus7 and the N4 has only been out 4 months, versus 8 for the N7.

Sony's are looking pretty good this year, as long as they continue to support the proposed Android FM API and/or they continue to use Qualcomm chipsets. This should generally be true on stock ROMs, and FreeXperia based ROMs with the FM support being added.
[Spirit FM] dumbl3:
Is my device supported?

Hello,

I was wondering if my device is supported. I have the:

- Sony Xperia S lt26i (aka nozomi)

- CyanogenMod 9

- Android version 4.0.4
[Spirit FM] Kess78:
Hi Mike,

I found a teardown of the galaxy s 4. Maybe this can help you out.

http://mobile.it168.com/tu/1462254.shtml
[Spirit FM] mikereidis:
Xperia S is reported to work fine on the stock ROM, using the proposed Android FM API.

The FM/combo chip is Broadcom and that should work OK on custom ROMs. If the custom ROM used the stock proprietary Broadcom BT/FM stack it might be able to work using the android FM API, since the plugin works on proprietary only.

I think the biggest obstable on custom ROMs is the audio. If/when FreeXperia supports FM on this phone, Spirit should work too.

Anyway, you should just try the free version before asking me about support. Then tell me what happens.
[Spirit FM] mikereidis:
Thanks, I've seen those pictures. This is better for those of us that read English: http://gsminsider.com/2013/03/14/sa...embled-and-torn-down-internal-parts-revealed/

There are always just 2 chips that are the most fundamentally important to me:

(1) The FM and/or FM/BT/WiFi combo chip, and

(2) The main audio chip.

(3-4) are sometimes additional audio chips, like DSPs, that can cause me trouble.

None of these pictures, AFAICT, show:

(1) The audio chip(s),

(2) A dedicated FM chip which may or may not exist,

(3) The BCM433x FM/BT/WiFi combo chip which may or may not have antenna connected.
[Spirit FM] dumbl3:
I tried the free version, it does not work.. It starts but I do not hear anything (0 signal). Iv got my head-phones with antenna connected ofcourse.. According to freexperia, fm supposed to be working with cm9 (not yet with cm10, or cm10.1).. , But it still does not work for me :confused:

I tried all bands but this does not seem to be making any difference.
[Spirit FM] mikereidis:
Send me a debug log with Menu-> Test-> Email-> Logs and after 20 seconds press Send.

I've had success logs from S and acro S, but never from a rooted device yet.
[Spirit FM] dumbl3:
Re: [APP] Spirit FM: Broadcom,Texas Instruments,Samsung Silicon Labs & Qualcomm FM ch

I send you an email. :thumbup:
[Spirit FM] cajunflavoredbob:
It's exactly as you say. I didn't bother with the tablets much because I didn't use them for FM much at home. My Defy gets a ton of FM usage since it sits on my desk all day. I rarely take my tablets somewhere that my phone isn't. It's just more handy to use a smaller phone for FM playback than lug around a big tablet.

Crossing my fingers on the ZL. :)
[Spirit FM] imdaman99:
Hey Mike, been following this thread. Would this app work with a Droid Razr XT912? Google play says it's not compatible. I can accept if it doesn't, as it is a 4G LTE phone. Although, I had it altered to only use 3G (for pageplus purposes). I would only use the stock rom, which I am on 4.0.4 right now, perhaps going to 4.1.2 someday. Thank you for your time, keep up the great work :)