Spirit2 is the successor to Spirit1 Unlocked and is the "Best Darn FM app"* in existence !
I'm closing this thread again in favor of the general Spirit1/Spirit2 thread: http://forum.xda-developers.com/showthread.php?t=1059296&page=868#post57106533
It's too confusing trying to figure out where to post what.
I will update first 10 posts of this thread as documentation when I can.
Spirit2 Beta releases on Play for customers, updated sign up info: http://forum.xda-developers.com/showpost.php?p=57079402&postcount=795
Android ONE = Google FM Radio ?? !! http://forum.xda-developers.com/showpost.php?p=53677209&postcount=781
Spirit2: Hi Mike, I am still enjoying Spirit 1, is there any reason to pay again for Spirit 2? : http://forum.xda-developers.com/showpost.php?p=52304934&postcount=647
HTC One M8 Verizon ! http://forum.xda-developers.com/showthread.php?p=51904184
Spirit2 is a real, tuned, over-the-air FM radio app for Android. It does not require Internet access.
Requires AOSP !: If you don't know what AOSP means, Spirit2 is not for you. Spirit1 Unlocked works on numerous stock phones: http://forum.xda-developers.com/showthread.php?t=1059296
*"Best darn FM app": Yes, it has some bugs, and some device support issues, and may lack some of the "polish" of many stock FM apps, but it's the most functional and even the current RC1 has more settings than stock apps.
The ONLY FM app supporting ALL this: Equalizer, Effects, Recording, BT A2DP and Visualizer.
Spirit2 also supports multiple "remote" displays and controls: Home and lock-screen widget, lock-screen, notification shade, BT AVRCP and future Android remotes. AVRCP puts RDS and station info on the display of compatible BT headsets, and controls Pause/Play and preset selection. Was pretty cool the first time I saw that working.
Install Spirit2 RC2, March 26 Google Play: https://play.google.com/store/apps/details?id=fm.a2d.s2
Spirit2 Beta group. Latest releases for Play customers: https://play.google.com/apps/testing/fm.a2d.s2
March 25 New Info:
Main XDA thread: http://forum.xda-developers.com/showthread.php?t=2537861
Officially Supported Devices, ROMs: http://forum.xda-developers.com/showpost.php?p=47722466&postcount=2
Usage: http://forum.xda-developers.com/showpost.php?p=47722466&postcount=3
About Digital Audio: http://forum.xda-developers.com/showpost.php?p=47722466&postcount=4
Troubleshooting: http://forum.xda-developers.com/showpost.php?p=47722466&postcount=5
Device Specific Issues: http://forum.xda-developers.com/showpost.php?p=47722466&postcount=6
Business Issues: http://forum.xda-developers.com/showpost.php?p=47722466&postcount=7
Features: http://forum.xda-developers.com/showpost.php?p=47722466&postcount=8
Reporting Problems: http://forum.xda-developers.com/showpost.php?p=47722466&postcount=9
Future of Android Radio: http://forum.xda-developers.com/showpost.php?p=47722466&postcount=10
"Upgrades" from Spirit1:
If you've been happily using Spirit1 Unlocked for at least 3-6 months, please consider Spirit2 as a second purchase, for a next generation FM app. Help me give Spirit2 the 3+ year lifespan that Spirit1 has had so far. My income is still at the lowest end of "tolerable". Support me and I can support you.
The price is a bit higher than Spirit1 Unlocked. It will be dropped a bit on the 1st day of each month.
At Release Candidate #1 all known major bugs have been addressed. Please understand: software always has bugs, new ROMs can require new code and improvements are ongoing.
Thanks !
Mike.
Spirit2 "Official Support"*: ONLY these phones running "Compatible AOSP"** ROMs:
Samsung GS3 GT-I9300
Samsung GS2 GT-I9100
Samsung GS1 GT-I9000
Samsung Note2 GT-N7100
Samsung Note1 GT-N7000
HTC One (GPE requires BT off)
HTC OneXL LTE, OneS, Evo 4G LTE (2013 CM11 only. 2014 kernels broke FM)
LG G2 D802 International and Sprint LS980 only. (Some stock, CM11 and Mahdi ROMs only as of March, 2014)
Motorola Moto G
*"Official Support" means I own the phone and I can properly support it.
**"Compatible AOSP" ROMs includes as many AOSP ROMs as I can reasonably support, that have the FM and audio kernel drivers needed to enable FM. CM11 is the most popular and best supported, except for the incompatible 2014 kernels for HTC OneXL LTE, OneS, and Evo 4G LTE. LG G2 is only supportable on CM11 and Mahdi ROMs as of March, 2014.
Unofficial Support:
The only other devices with a chance of working fully are those with Qualcomm WCN3660 or newer compatible FM/BT/WiFi chips as well as Qualcomm WDC9310 or newer compatible audio chips. This includes most late 2012+ Sony devices starting with Xperia T. These may or may not work well, and are not officially supported. With sufficient demand I will consider buying a "Z" device and officially supporting some Sony's.
Stock ROMs:
Spirit2 also works reasonably well on many stock or stock derived ROMs when rooted. But there are often problems, such as FM over BT issues on Samsung stock ROMs. Most of my customers are on AOSP/CM ROMs.
Stock FM apps are available on stock ROMs, and few stock ROM users support Spirit financially, so I focus on AOSP. The Death of access to stock, unrooted OEM proprietary FM APIs has sharpened that focus: http://forum.xda-developers.com/showthread.php?p=50954346
Support for New Devices:
Support for new devices will be considered IF all of these are true:
FM is possible. GS4, Note3 (except Sprint) and GS5 are not possible for anyone to ever support. See GS5: http://forum.xda-developers.com/showpost.php?p=50600906&postcount=7541
Digital FM Audio is possible, the Spirit way. Most higher end 2013+ phones are capable, as well as some lower end, such as Moto G.
Popular among AOSP ROM users. Galaxy S and 5 inch Note class flagships are the vast majority of Spirit2 and current Spirit1 Unlocked sales.
Higher end ; Inexpensive phones are great, but most apps are sold on high end devices.
I need to be convinced that the costs of purchasing this phone, PLUS the much greater costs of supporting it will result in at least a liveable wage. Just learning how to and flashing various ROMs can add up to hundreds of hours. Add fixing soft-bricks, learning the HW & SW, investigating, reverse-engineering, coding, and doing ongoing updates, fixes, workarounds and support and you get a glimpse of why Spirit2 support is limited to a handful of the most popular devices.
Ideally, the non-International North American variants support FM, at least in hardware. LG G2 and all Samsungs are a great disappointment here.
Every day I get MANY Spirit1 Unlocked debug logs in my email from pirates. Most of them come from less expensive devices, especially Mediatek devices from Huawei, ZTE, and much lesser known companies.
I have little interest in supporting phones that might earn me $100 if I got lucky, and would drown my email with even more pirate debug logs.
Usage:
Power control:
Status: Center of shiny frequency dial power icon is blue if on or grey if off.
Toggle: Tap center of shiny frequency dial where blue (if on) or grey (if off) power icon is.
On: Tap Play button at lower right or in widget.
Off: Tap square Stop button at lower left, in widget or in notification shade.
Auto on: Start app to automatically turn on FM.
Auto off: Start another music app and FM will automatically turn off.
Tuning:
Dial: Big shiny frequency dial displays and can be used to set frequency.
Blue Digital: Tap numbers to manually enter frequency.
Seek: Previous and Next buttons to left and right of Blue Digital display seek down or up to next strong station. Same for widget, notification shade, lock-screen and other remote controls, but ONLY when there are less than 2 presets programmed.
-/+: Left and right buttons below seek buttons tune down or up to next valid channel, depending on Band setting.
Presets: There are 16 presets at bottom. Press or long press a "+" to set or reset the current frequency as a preset. RDS names are now supported.
Preset -/+: When 2 or more presets are programmed, they can be navigated with the Previous and Next buttons for the widget, notification shade, lock-screen and other remote controls. With 0-1 presets, these are seek controls.
Mute/Unmute:
Status: Pause/Play button at lower right, in widget or in notification shade shows expected result of tapping it. Eg shows Pause if currently playing.
Toggle: Tap Pause/Play button to pause or play audio.
Volume:
Status/Change: Tap speaker button at top right or use hardware or headset media buttons to display and change Music stream volume.
Record:
Status: Red button at top left is brighter when recording.
Toggle: Tap red button to change recording state. Files at /sdcard/Music/fm.
Equalizer:
AOSP compatible equalizers, such as CM DSP Manager, can be accessed in ROM Audio settings, or with the Spirit2 on app "Menu" key (not the old style phone Menu keys). This key has 3 horizontal lines and is at low center between Stop and Pause/Play.
Settings:
Some settings are accessible by swiping from right to left to access a window to the right of the main window.
UI Visual: To replace the frequency dial with a waveform and spectrum analysis visualizer.
Band: Use "USA" in North America or "EU+" everywhere else.
Tuner Stereo: Stereo 2 channel when checked or Mono when unchecked.
Tuner AF: Alternate Frequency switching enabled when checked.
Audio Stereo: Distinct from Tuner Stereo and can lower CPU load and recording size.
Audio Speaker: Experimental Speaker mode works on some phones but may have volume control issues.
Notes:
Other settings: none at this time.
Debug log sending is experimental.
Remote display and controls: for lock-screen, notification shade, widget, wired headset media buttons and remote controls and info display via BT AVRCP.
Speaker output experimental. Workaround: remove wired headset plug enough to switch to speaker, but still inserted enough for a good antenna connection.
About "Digital Audio":
History:
Before 2013, most FM radio audio on Android phones was "mostly analog"*. FM audio bypassed the digital audio chain and was injected in the final stages, after the final D->A conversions.
FM audio was a special path that did not follow the same rules as every other source of audio on Android. Hundreds if times I've heard "... but it works fine with music players etc." and I explained how FM is different. Fm audio usually can not be equalized or modified with effects. It usually can not be recorded, visualized, or routed to BT headsets.
AOSP Difficulties:
Besides lacking these digital audio features, "non-digital"** FM audio is difficult to do on AOSP ROMs. AOSP usually does not use the stock audio libraries that contain support for FM. This has been a never ending source of grief and work for me; I spend at least 50% of my development time on audio issues as a result.
Basically, Spirit will use SU/root low level functions to set up the audio hardware for FM, via kernel device driver commands for ALSA or earlier APIs. But the ROM audio library has no idea that FM is running. This can often result in conflicts that break audio, especially during audio notifications. On some popular older devices, such as HTC Desire HD, I had to create a hack that resets the entire audio system when FM is turned off. And users just have to live with the fact that audio notifications break audio, at least until FM is turned off or the device is rebooted.
There were many other problems, including a need to continuously loop a silent audio file, to convince the audio libraries that music was playing. Otherwise, volume control was lost, among other things.
This was rarely a problem on CM7 ROMs that included a CM FM app, because the audio libraries supported FM. But most CM9 ICS and later ROMs dropped support for FM. I considered making code contributions to CM and other ROMs to fix this problem the proper way, in the audio libraries. But I concluded this would take all of my time, may create personal conflicts and might never cover the majority of ROMs anyway.
*"Mostly" analog: Surprisingly, just about every FM chip does internal signal processing digitally, after the initial A->D conversions, Frustratingly, virtually every 2012- phone did not use digital outputs, where they existed, but converted the Digital left and right audio back to analog.
"Non-digital"**: I do not use this term to strictly mean "Analog". I use it to mean a method to enable FM audio that stock OEM FM apps use, and that Spirit1 uses, when not using one of the "Digital..." Audio-> Method settings. At the chip level, the audio may be digital, as is the case when using Qualcomm FM/combo chips with Qualcomm WCD9310 or compatible audio chips.
Spirit's Digital Audio Solution:
A digital solution to most of these problems was envisioned in late 2012, and resulted in the 1st prototype alpha releases of Spirit2 in early 2013. Spirit2 was digital only and this proved to be a much easier way to do FM audio, with few problems. When it became clear how much more work was needed to complete Spirit2, and given that Spirit1 continued to sell well enough to live, digital audio was "back ported" to Spirit1.
Here's how it works: Instead of just sending a few commands to the audio drivers, Digital audio mode sends different commands to enable digital, then continuously reads the ALSA PCM channel. All audio data read is then written to the Android Audiotrack API, the same as most streaming apps do. A streaming app reads from the network; but Spirit reads from the FM/audio chip.
The main disadvantage of this digital audio method is higher CPU and battery consumption. OTOH, "non-digital" audio on most AOSP ROMs required a constantly looping silent audio file anyway, so the difference is minimized.
Another digital disadvantage is that some devices can experience brief audio drop-outs. This does not affect Samsung devices. Full and partial workarounds include modifying CPU frequency or kernel scheduler. Tuning and investigative work is ongoing.
There are also challenges for speaker mode. The current support is experimental and does not work on all devices. But the current code is much cleaner and much more robust than Spirit1 non-digital audio, which can have issues during phone call interruptions. Volume control can also be unusual over speaker. The reason for these problems is that Android is designed to switch to speaker only when the wired headset is unplugged. But FM is unique: the wired headset is used for the antenna. A workaround for motion-less devices: remove the wired headset plug just enough to switch to speaker, but not enough to lose the antenna affect.
But the advantages of this form of digital audio are HUGE, IMO. They have allowed me to provide all the audio features people had been asking for: recording, equalization, effects, A2DP BT headset and visualizers.
AND it allowed me to minimize the MANY FM specific audio problems with much smaller, better designed and better written code, with a minimum of special cases. The Spirit1 audio (and other) code is a huge mess and can never be re-written IMO.
Audio dropouts on non-Samsung devices made me consider non-digital audio methods in Spirit2, despite the work and complications that would create. But a variety of fixes and re-tuning has improved audio, workarounds have been identified and work is ongoing.
The advantages of digital only are too great IMO to "pollute" Spirit2 code with non-digital audio. I've even removed previous non-official support for stock Sony devices in order to concentrate on digital audio that is as flawless as possible.
Drop-out Workarounds:
Samsung devices only rarely have audio drop-outs. I've only seen this on the oldest, now "vintage" original Galaxy S GT-I9000, and only when recording, at the same time that the equalizer, effects and the visualizer are all running. The old single core CPU gets close enough to it's processing limit that very occasional ticks may be heard, but the recording is usually fine.
LG G2 and Moto G are working pretty well now. The worst affected are the HTC One and the HTC OneXL/S/Evo 4G LTE, or other Qualcomm FM+audio devices. Further tuning and investigation is ongoing, but these things can minimize the problem:
Don't record.
Turn screen off.
Disable visualizers or any other app or service that might be using CPU resources.
Disable equalizer or other audio effects. Bass-boost and EQ alone don't seem too bad.
Raise CPU minimum and/or maximum frequency (Only if you understand the risks of CPU burnout.)
Change CPU scheduler: Performance risks CPU failure; Interactive or Pegasusq may be better.
Troubleshooting:
Does not start:
SU/root missing is the most common problem. Ensure Spirit has permission enabled in the SuperUser or SuperSU app, or with the ROM Super* settings.
Omni & many other ROMs require manually flashing SuperSU. After flashing, run SuperSU and respond Yes when prompted to allow SU reflash after ROM updates.
If your device is not officially supported, it will likely not work. Except for devices with both recent Qualcomm FM and Qualcomm audio, phone architectures for FM are very different from each other.
Stops playing or hangs:
Workaround: Force stop or reboot. Fixes are ongoing.
Audio Stops at Homescreen:
Disable Google Now Launcher: Homescreen Long Press-> Settings-> Voice-> "OK Google" hotword detection-> Off.
Audio Dropouts:
See "Audio Dropout Workarounds" at bottom of "About Digital Audio": http://forum.xda-developers.com/showpost.php?p=47722488&postcount=4
Odd frequencies only:
Set Band to "EU+" after swiping from right to left to reveal right side settings. Default is "EU+" unless ROM identifies location as North America.
Where are recordings ?:
See /sdcard/Music/fm for WAV files named with parseable start time. Compression to MP3 files will be considered in future. Maximum of 4 GB results in 5-10 hour maximum time, depending on sample rate (22-48 K depending on phone).
Speaker does not work:
Experimental at present. Workaround: remove wired headset plug enough to switch to speaker, but still inserted enough for a good antenna connection.
Speaker volume control broken:
Experimental at present. Turn Screen off or use on app volume.
Phone call problems:
Avoid speaker mode
Avoid removing or inserting wired headset while FM or phone call is active.
Other:
See "Device Specific Issues" for your phone: http://forum.xda-developers.com/showpost.php?p=47722507&postcount=6
See "Reporting Problems": http://forum.xda-developers.com/showpost.php?p=47722466&postcount=9
Device Specific Issues:
GS3/Note2:
Stock issues with FM over BT; requires wired headset unplug.
Note2 requires (widely available) kernel codec_reg to equalize channel volumes.
GS2/Note1:
Stock issues with FM over BT; requires wired headset unplug.
GS1/Player:
Spirit2 slows device considerably. Vintage single core CPU struggles with digital audio.
Audio levels a bit low. Experiments to raise analog gain unacceptably increased distortion.
HTC One:
See "Broadcom One & G2".
GPE and stock require root/SU and BT off.
Stock ROM audio may change when Spirit goes on or off-screen.
See "Audio Drop-out Workarounds".
LG G2:
See "Broadcom One & G2".
FM over Bluetooth WAS THOUGHT TO BE impossible due to LG hardware design. (Switch shared by BT and FM). But it works now in CM11, and even unpaired BT on speeds up startup.
Broadcom One & G2:
HTC One and LG G2 both use a Broadcom BCM433x FM/BT/WiFi combo chip.
GPE and stock ROMs use proprietary-ish BT stack, so BT must be off for "UART mode" (or use Spirit1 on stock LG). This may be fixable.
UART mode can take 10-15 seconds to start. Be patient.
For FM over BT or faster startups, AOSP (but not GPE) ROMs use a "Bluedroid shim" method to access FM.
For Bluedroid shim, install with BT off, run Spirit2 once, reboot, start BT and start Spirit2. ROM upgrades require repeating this step every upgrade.
Don't change BT power state while Spirit is running. This should be more graceful in future.
HTC OneXL/S/Evo 4G LTE:
Qualcomm WCN3660 compatible FM/BT/WiFi & Qualcomm WDC9310 compatible audio. See "Qualcomm OneXL, MotoG & Unofficial".
2013 kernels and CM11 only, or cm-11-20140104-SNAPSHOT-M2-evita.zip ! Unfortunately, 2014 kernels broke FM by removing modules support.
Moto G:
Qualcomm WCN3660 compatible FM/BT/WiFi & Qualcomm WDC9310 compatible audio. See "Qualcomm OneXL, MotoG & Unofficial".
CM11 for Moto G includes an FM app and there can be interference if you run both at once.
Qualcomm OneXL, MotoG & Unofficial:
Qualcomm WCN3660 compatible FM/BT/WiFi & Qualcomm WDC9310 compatible audio.
Some kernels do not support the Qualcomm Iris FM driver.
See "Audio Drop-out Workarounds".
Unofficial includes most Sony late 2012+ devices starting with Xperia T. With sufficient demand I will consider buying a "Z" device and officially supporting some Sony's.
Business Issues:
Why a commercial app ? :
Because donation models just don't work in the long run. CM went commercial to better thrive and the same for Spirit. Spirit would have folded after 1 year, instead of the 3+ years it's been going, without app sales at a decent price.
Why so expensive ? :
Latest post about pricing: http://forum.xda-developers.com/showpost.php?p=51269130&postcount=574
Refunds & Upgrades:
New 30 day refund policy: http://forum.xda-developers.com/showthread.php?p=50889714
Both Spirit1 Unlocked AND Spirit2 ? :
I NEED your financial support, so if you can afford it, I appreciate those who purchase both. See post below for a list of differences.
But if you are a paid customer for one of these apps, I can send you test copies of the other here and there. This might be for trouble-shooting, or to gain features or avoid certain bugs.
Open Source ? :
Nothing yet, other than a few example snippets and an App Inventor app that nobody seems interested in.
At some point, everything will be released, as I've done with other projects. X years after I pass away, or at some time I find appropriate.
I may release portions, to allow 3rd party FM or audio chip plugins, 3rd party apps or whatever. Convince me that it's in my (and Spirit's) interest.
Redistribution:
Any version I release as Free, as described in this thread, can be re-distributed in a ROM, as long as there is no misrepresentation, or fee charged for the ROM, or combo of phone and ROM or whatever I deem.
Any versions which I do not identify as Free must not be distributed, sold, or otherwise "spread".
Free versions will be the exception, rather than the rule, at least at this time. I owe it to Spirit, myself and all of you to keep Spirit alive as well and as long as I can. Please support as best you can; I still get occasional Paypal donations, to [email protected] and I appreciate all of them.
Features:
Features may be added as demand and time available indicate. As of March 2014, Spirit1 Unlocked still has features that Spirit2 does not.
But Spirit2 will likely not get EVERY feature that Spirit1 Unlocked has. It seems better to me to focus on the most commonly requested features. Time available for adding features is always in short supply, with the constant flow of new ROMs creating a constant flow of new problems to solve. Spirit2 is focused more on quality than feature quantity.
As of March, 2014, Spirit1 Unlocked has pretty much every feature that Spirit2 does. Exceptions include an OFF button in the widget and notification shade, which is exclusive to Spirit2.
So I'll list features that are exclusive to Spirit1 Unlocked:
Spirit1 Unlocked exclusive features:
Stock, unrooted device support. Spirit2 will likely never add this feature, due to the low level of interest and the "Death of access to 3rd party FM APIs" as posted.
Settings, especially Debug. Spirit2 attempts to automatically set as much as possible, visibly or not. Spirit2 WILL get more settings, as time available and demand indicate.
Speaker mode. Still experimental on Spirit2, with issues.
Preset rename and delete. Spirit2 will add.
Preset lists as groups for presets. No demand ?
Screen rotation. No demand ?
Sleep function. Little demand ?
Antenna/headset unplug action. Little demand ?
Recording options. Will add some.
Reporting problems:
I prefer that Spirit2 problems be reported publicly on this XDA thread. I almost always reply to thread posts before dealing with my email.
If you are using a Free version, I generally prefer that you not email me.
I've disabled XDA PMs; I got tired of "private requests for support" from non-customers. If it's important, email [email protected] .
If you're a customer and you post, let me know if I don't know you. I may be more likely to help and flash your ROM to test or whatever. These things take time and time is short.
If you're a customer and you email, and we haven't exchanged email before, please give me the email of purchase, or better yet the order ID. Some people DO pretend to be customers, and are not. Google used to make it easier to search customer records, but in the name of privacy, it's now hard to search.
Always include your phone model and variant (eg ATT version), and the ROM you're running. For Spirit2 I'll presume you are rooted at least.
Thanks !
Future of OTA Radio on Android:
I say "OTA Radio", but it boils down to analog FM. Nobody has ever supported AM radio in an Android phone.
Digital HD or DAB+ etc radio is non-existent on smartphones. See: The "Euro Chip Initiative" and "The Universal Smartphone Radio Project": http://forum.xda-developers.com/showpost.php?p=50419281&postcount=451
I have no crystal ball, but the trend seems downward.
Attempts to standardize on an FM API for Android have all failed.
Future of Spirit:
From the perspective of Spirit, financial support has been strongest from owners of high end Samsungs, since I added support for GS1 in 2011 and GS2/Note in 2012.
We've now seen 3 flagship phones from Samsung on which FM is impossible to enable (very purposely): GS4, Note3 (except the very rare Sprint variant) and now GS5. Thus my primary sources of financial support are drying up.
The only 2013 devices that are officially supported by Spirit2 are LG G2 and Moto G, and sales on these devices is sadly tiny. And I'm not seeing any 2014 devices so far that I would be able to officially support, though I will keep an eye on the Sony Xperia Z2.
It does not help that all Nexuses (except the now ancient Nexus One) also have FM permanently disabled in hardware (very purposely).
I am further troubled that both HTC and Samsung have disabled 3rd party access to their FM APIs. It's impossible now for Spirit1 to work on the latest stock Note3 and HTC One ROMs. I experimented with Samsung stock API support in Spirit2, but have now removed the code; it's useless to fight the trend.
Add the fact that Google is adding security features to Android that are IMO welcome, but are making things more and more difficult for root apps. At least AOSP ROMs like CM11 tend to be more welcoming.
How long can I keep Spirit going ? :
I currently make income that's around the low end of liveable. My long hours make it about the minimum legal wage here. Employers pay 5 times as much in my field, plus benefits and vacations.
My income was "decent" in the spring of 2012 when I stopped posting a free version on Play, added GS2 support and raised the price of Spirit1 Unlocked to about $10. Since the spring of 2012, my income has dropped, pretty much every month, to a bit more than half it's peak. See my pricing posts if you think I can "make it up with volume" by lowering the price.
Introducing Spirit2 has induced a small bump. Please help me bump it higher... I hope I can keep Spirit going full time until at least the end of 2014, after that things get fuzzier.
My niche (OTA FM radio) within a niche (AOSP ROMs) is narrow enough that I have pretty much ZERO paid app competition. Worse, it's getting narrower as time marches on. Nobody else has been "crazy" enough (and/or capable enough) to try this. But it's narrow enough, and narrowing fast enough, that I have to acknowledge it.
So, as a responsible, home owning adult, parent and husband, I have to start investigating other app opportunities. If/when my income drops sufficiently I may have to devote more time to other projects. Perhaps in the areas of audio, Bluetooth, AOSP and even wearables.
I understand that many pirates can't afford, or would never support Spirit. That's life, that's economics; it must be accepted.
If the piracy rate was 90%, then converting just 10% of the pirates into customers could double my income, and keep Spirit2 going for at least the 3 year life that Spirit1 has so far.
Thanks for listening.
Mike.
Here we go.
Please let me know if you prefer the app name "a2d.fm" or "Spirit2".
I will likely go with whatever is most popular.
I intended to go with "a2d.fm" but it doesn't seem to roll off the tongue as easily as "Spirit2".
Spirit2
For me Spirit2 sounds much better! Thanks for your effort!!
Somehow I seem to be reading the name as a2d2. I guess I really need my glasses to read what was written as opposed to what I think is written. a2d.fm for me since this will sort first and will be one of my most used apps.
Bought for my SGS3 running android 4.4 and I'm not sure how to tune a station.
Sent from my SGP311 using xda app-developers app
Awesome! Thanks Mike! And happy holiday to you too.
mikereidis said:
Here we go.
Please let me know if you prefer the app name "a2d.fm" or "Spirit2".
I will likely go with whatever is most popular.
I intended to go with "a2d.fm" but it doesn't seem to roll off the tongue as easily as "Spirit2".
Click to expand...
Click to collapse
Definetely Spirit2 (or Spirit FM 2, or Spirit2 FM): it recalls immediately previous app, thus its quality
Works fine on my device thanks !!
One display bug when the RSSI goes above 100 it displays 1.. .
For the name maybe just a2dFM without the . ?
Kess78 said:
Works fine on my device thanks !!
One display bug when the RSSI goes above 100 it displays 1.. .
For the name maybe just a2dFM without the . ?
Click to expand...
Click to collapse
What device do you have it on, and what rom?
Ta!
Sent from my SGP311 using xda app-developers app
mikereidis said:
Here we go.
Please let me know if you prefer the app name "a2d.fm" or "Spirit2".
I will likely go with whatever is most popular.
I intended to go with "a2d.fm" but it doesn't seem to roll off the tongue as easily as "Spirit2".
Click to expand...
Click to collapse
Spirit2 for me too
I have now purchased Spirit2. It's a little expensive, but as much you do for FM on Android it's only reasonable.
How can i close the app because it keeps running in the background. Awesome app by the way
Sent from my GT-I9100 using Tapatalk 4
Hi,
has anyone got issues with Bluetooth audio? When I connect my note 4 to my car (vw golf mk7) it just say bluetooth audio on screen while playing the track without any track info or the ability change track from the cars controls which all worked fine on my note 3.
is it missing features? I have checked all the bluetooth settings but still the same issue.
I have used samsung music player as well as my default poweramp one.
I have the X note rom on mine.
Any feed back appreciated
Thanks
a5ian300zx said:
Hi,
has anyone got issues with Bluetooth audio? When I connect my note 4 to my car (vw golf mk7) it just say bluetooth audio on screen while playing the track without any track info or the ability change track from the cars controls which all worked fine on my note 3.
is it missing features? I have checked all the bluetooth settings but still the same issue.
I have used samsung music player as well as my default poweramp one.
I have the X note rom on mine.
Any feed back appreciated
Thanks
Click to expand...
Click to collapse
I'm having similar problems where the display doesn't show any information, but my controls on the steering wheel are working. The display issues are only in my Honda Pilot though, they show perfectly in my wife's Honda Fit. Fortunately I only have about 6 months left on the lease so I'm hoping a newer vehicle with newer firmware will solve the issue if no one on here knows what's happening...
I might try look at updating the vw mk7 software and see if that helps.
Has the same problem too mk7 golf pair up note 4 will not change songs at all stock rom here i have... the note 4 has alot of problems even youtube cant play anything higher then 720p
so. It's known issue must be bluetooth version 4.1
a5ian300zx said:
so. It's known issue must be bluetooth version 4.1
Click to expand...
Click to collapse
I have a mk7 golf, latest firmware updated 2 days ago, with a note 4 running 4.4.4 and I have exactly the same problem.
So frustrating, as my note 2 still works fine.
I have 63 plate Renault Captur, and iphone 5s, HTC One M7 and M8 all show correct info. Note show's nowt.
after a bit of digging around i discovered the issue is related to the note using newer version of the avrcp within bluetooth which does all the multimedia bit.
In the note its version 1.5 while all other manufacturer still use v1.3
I have read that samsung said they would revert back to avrcp version 1.3 in the next update but don't hold me to that.
Thanks
Next update, then Android Lollipop?
Also, I found this on wikipedia, it says that the 1.5 is backwards compatible. Why Note 4 not?
1.0 — Basic remote control commands (play/pause/stop, etc.)
1.3 — all of 1.0 plus metadata and media-player state support
The status of the music source (playing, stopped, etc.)
Metadata information on the track itself (artist, track name, etc.).
1.4 — all of 1.0 and 1.3 plus media browsing capabilities for multiple media players
Browsing and manipulation of multiple players
Browsing of media metadata per media player, including a "Now Playing" list
Basic search capabilities
Support for Absolute volume
1.5 — all of 1.0, 1.3 and 1.4 plus specification corrections and clarifications to absolute volume control, browsing and other features
Click to expand...
Click to collapse
I have this issue with my Note 4 and Alpine CDE-133BT, GS2, GS3 and GS4 works fine.
But also iPhone 6 commands don't work.
Opel Astra Sport Tourer 2014 same problem
I can confirm this problem with my Audi A3 (8V, built in 2013). My previous Note2 worked like a charm, now I can use the phone functionality, but I can't select any songs from the phone memory or use functions like Play, Pause, Skip etc.
Has anyone checked whether with Lollipop has anything changed?
Any news on this topic? Would love to listen to music from my phone in my car again
I tried a while ago with the latest 5.0.1 (ITV BOC5) and the problem persists.
I'm wondering if anyone has issues with and solutions for bluetooth connectivity problems. Specifically, constant dropouts and stuttering.
Background of problem
I recently purchased my phone, which was already on Android 10 (Build QP1A.190711.122). From the start, bluetooth has been unbearable: if I move the phone in any way, or I move the connected bluetooth device (headphones, earbuds, speakers, etc.) it stutters and cuts out momentarily. Sometimes the stuttering continues incessantly. In short, my bluetooth is useless for listening to audio, making phone calls, etc. I basically have to be next to be perfectly still and right next to the phone, and even then it may act up.
Failed troubleshooting efforts
I installed the September update, rooted the phone and tried various options many times, including:
*Hard resetting the phone
*Flashing and re-flashing the stock rom several times (even after full wipes)
*Wiping the cache in recovery
*Clearing the bluetooth cache
*Playing with the bluetooth options in Developer Options
*Unpairing and re-pairing various bluetooth devices
I'm lost and wondering if the gyroscope is messing with bluetooth connectivity in someway. I have no idea whatsoever.
Thoughts and comments appreciated.
@droctii
I have not had an issue like this, sounds like a low power/weak signal issue or interference or conflicting devices
Which sounds like this
https://forum.xda-developers.com/essential-phone/help/awful-bluetooth-connection-t3713280
users report 2 or 3 fixes scanning through thread
Same here. bluetooth connectivity has rather worsened since android 10.
however the recent ota updates on android 9 have been a hit or miss since march 2019. Before that, bt was working perfectly fine.
Coming back to android 10, as an example, the link with my bose soundwear with minor exceptions had been really strong bt -wise but since the update I get even with it random disconnects, and infrequent stutter/cuts etc. The same for my sony wh1000x m3, it behaves a little better but only using sbc codec, so i stick to that. However, older devices such as my car's bt, tv soundbar or even google mini when phone's just next to it are unusable with this phone. Also, the more crowded an environment (interference-wise) more likely to experiment issues.
For comparison, all other older phones I have still work fine within same parameters
I haven't taken my PH-1 to A10 yet, but my pixel 3XL had been struggling with Bluetooth. Today is the first time it's been useable, but I made a bunch of random changes in developer options. I haven't worked out which had helped. FWIW, I'm attaching a screen shot of the settings I'm using.
ktmom said:
I haven't taken my PH-1 to A10 yet, but my pixel 3XL had been struggling with Bluetooth. Today is the first time it's been useable, but I made a bunch of random changes in developer options. I haven't worked out which had helped. FWIW, I'm attaching a screen shot of the settings I'm using.
Click to expand...
Click to collapse
A lot of Bluetooth devices don't implement the protocols properly, especially on the cheaper side. You disabled A2DP so that probably helped.
You should be able to enable A2DP but use the highest version of AVRCP available, yours seems rather low. Should work fine.
Verlog5454 said:
A lot of Bluetooth devices don't implement the protocols properly, especially on the cheaper side. You disabled A2DP so that probably helped.
You should be able to enable A2DP but use the highest version of AVRCP available, yours seems rather low. Should work fine.
Click to expand...
Click to collapse
What makes you think A2DP is disabled? The hardware handoff is disabled. Not the same thing. And that is the solution to my stuttering and disconnect issues. Toggling that makes the problems come and go.
Same problem on my car with 1+7pro and android10, music is discontinued, or freezed, stuttered...
But for me line with disable bt ad2p hardware offload is greyed and swith is to left
salva52 said:
Same problem on my car with 1+7pro and android10, music is discontinued, or freezed, stuttered...
But for me line with disable bt ad2p hardware offload is greyed and swith is to left
Click to expand...
Click to collapse
You would be better served looking/posting in your own device forum. This is the Essential PH-1 and your software is very different.
I have had such problems with various devices and while disabling A2DP offload always solved the problem, so did playing around with the AVRCP versions.
My essential phone has been sitting on my desk for the last 3 months due to these insolvable bluetooth issues. Neither AVRCP nor A2DP solved the issues, the bluetooth is stuttering constantly when I move my phone around and not in direct sight of my receiver(s).
I tried 3 different wireless earbuds and they all suffer from random stutters or disconnects if I'm actively walking with my phone. The closer the phone is to my upper body, the better the signal is (most of the time). If I connect my phone to any Bluetooth device at home or in the car where the phone isn't moving, the connection is perfect. I've tried the different methods mentioned in this thread and nothing fixes it. I've given up and just hoping my next phone doesn't suffer from the same thing.