[HOWTO] activate the FM Radio - LG Optimus 2x

Hey Ho
First of all I'm new to XDA so please excuse my mistakes.
I played a little bit with the sound chip of the 2x and got the audio routing for the FMRadio :victory:
First you need to flash this Download CWM by pengus77
Second you need Spirit FM by mikereidis
1) start Spirit FM
2) you can either execute the commands manualy in the terminal or you can download my script and execute it with "Script Manager"
Here are the commands:
EDIT: Updated version here
Now you should hear the station you selected through the headphones
PLEASE NOTE
The settings disappear after reboot
The settings disappear after a call
The settings disappear after you close Spirit FM
The settings might affect music playback and/or recording, to go back to normal reboot your phone or make a call
I'm not responsible if you damage your phone or your ears because of to loud music
The sound is only mono, because i don't have the paid version of Spirit FM and maybe it's a hardware limitation :/
Edit: This has been tested with ParanoidAndroid v2.6 - build 08 [Feb 22] and Kowalsky Kernel exp 112
I hope some developers stumble upon this and integrate it in their kernel/ROM
have fun
sudden36

Sweet!! Gonna include the FM radio patches of CM with a method to enable it in the next PA version, with credits to you of course
Will discuss with pengus if it's possible to apply this directly in the kernel.

Awesome man! I'll setup this path directly in the kernel via a sysfs switch so it's persistent

Really great sudden36 !
Thanks a lot !!!

The play store link for Spirit fm shows incompatible.
Thanks for the work.
Rom: pengus 0208
Kernel pengus 100p5
Sent from my LG-P990 using xda app-developers app

kekks said:
The play store link for Spirit fm shows incompatible.
Thanks for the work.
Rom: pengus 0208
Kernel pengus 110p5
Sent from my LG-P990 using xda app-developers app
Click to expand...
Click to collapse
Grab it from here: http://forum.xda-developers.com/showthread.php?t=1059296

Thanks for the effort, been looking for working radio app for ages! Now I'm a happy camper :good:
One small problem though: when I turned on the FM radio, my phone mic picks up surrounding noise and channels it through my earphone (I'm on PA CM10 build 8 + kowalski 100p5 old bl). Could you please take a look at it?

komedol said:
Thanks for the effort, been looking for working radio app for ages! Now I'm a happy camper :good:
One small problem though: when I turned on the FM radio, my phone mic picks up surrounding noise and channels it through my earphone (I'm on PA CM10 build 8 + kowalski 100p5 old bl). Could you please take a look at it?
Click to expand...
Click to collapse
Thanks for your feedback
I actually made a mistake with the last audio path, here should be the correct one:
Code:
#! /bin/sh
echo "Configuring Input"
alsa_amixer sset "IN1R" "off"
alsa_amixer sset "IN1R PGA IN1RN" "off"
alsa_amixer sset "IN1R PGA IN1RP" "off"
alsa_amixer sset "IN1L" "off"
alsa_amixer sset "IN1L PGA IN1LN" "off"
alsa_amixer sset "IN1L PGA IN1LP" "off"
echo "Configuring Output Mixer"
alsa_amixer sset "Right Output Mixer IN1R" "off"
alsa_amixer sset "Left Output Mixer IN1L" "off"
alsa_amixer sset "Right Output Mixer Right Input" "on"
alsa_amixer sset "Left Output Mixer Right Input" "on"
echo "Configuring Input Mixer"
alsa_amixer sset "MIXINR IN1R" "off"
alsa_amixer sset "MIXINL IN1L" "off"
alsa_amixer sset "MIXINR IN2R" "off"
alsa_amixer sset "MIXINL IN2L" "off"
# change these values to adjust volume to your needs
alsa_amixer sset "MIXINR IN1RP" "5"
alsa_amixer sset "MIXINL IN1LP" "5"
echo "Configuring Headphone Mux"
alsa_amixer sset "Left Headphone Mux" "Mixer"
alsa_amixer sset "Right Headphone Mux" "Mixer"
echo "done"
I hope this time it works

kekks said:
The play store link for Spirit fm shows incompatible.
Click to expand...
Click to collapse
I marked it incompatible because it hasn't worked on custom ICS+ ROMs for the last year+.
I'm happy to see this. I'll try to integrate the ALSA settings into the existing "LG4 / P990" audio-> method tonight. I did a hopeful update to this method in November but only one person reported it working and only briefly.
Do note however that my experience is this:
Getting FM audio working basically, as has been done here, is often VERY difficult (unless you already know the magic incantations). But it's often only 10% or so of the problem.
The other 90% of the work is making audio work well in the midst of phone calls, audio notifications, screen off, headset plug-ins and outs and many "edge cases".
As I've said repeatedly, most of my work these days is with audio issues and not the FM chips and APIs. Android has no framework to support FM audio. And it seems every manufacturer, device/chipset and ROMs do it at least somewhat differently. And it's usually analog audio, injected late in the audio processing chain (ie "hacked in"), rather than going through the normal digital audio paths everything else does.
My point is that I can only officially support this in Spirit if it works well, with few problems, and without too much work from me and without my needing to buy one to test. Otherwise, it may work, but will remain unofficial support.

Glad to hear that,awaiting new version of spirit fm and penguses kernel

mikereidis said:
I marked it incompatible because it hasn't worked on custom ICS+ ROMs for the last year+.
I'm happy to see this. I'll try to integrate the ALSA settings into the existing "LG4 / P990" audio-> method tonight. I did a hopeful update to this method in November but only one person reported it working and only briefly.
Do note however that my experience is this:
Getting FM audio working basically, as has been done here, is often VERY difficult (unless you already know the magic incantations). But it's often only 10% or so of the problem.
The other 90% of the work is making audio work well in the midst of phone calls, audio notifications, screen off, headset plug-ins and outs and many "edge cases".
As I've said repeatedly, most of my work these days is with audio issues and not the FM chips and APIs. Android has no framework to support FM audio. And it seems every manufacturer, device/chipset and ROMs do it at least somewhat differently. And it's usually analog audio, injected late in the audio processing chain (ie "hacked in"), rather than going through the normal digital audio paths everything else does.
My point is that I can only officially support this in Spirit if it works well, with few problems, and without too much work from me and without my needing to buy one to test. Otherwise, it may work, but will remain unofficial support.
Click to expand...
Click to collapse
Hiya, in the p990 kernel there are a couple tweaks i can implement, exposing via sysfs the is_call_mode and is_fmradio_mode booleans so it's possible to tell the kernel that we're using the radio. Those variables are in the wm8994 code and ICS blobs set them via ioctl. We'll probably also have to mod a bit the phone/framework code in cm10.X to support the same switching, but i think it's "the right way". I'll investigate a bit in ICS to see if i'm correct on this assumption, but if i am we could maybe perform a couple tests in private and see if it works as it should. What do you think ?

I don't have any debug log showing these ALSA controls.
Someone send me a debug log from Spirit. Use Menu-> Test-> Email-> Logs and press Send after 20 seconds.

This is amazing, now we can hope we dont net this steps and the Dev can implement it or its can implement in the Kernel/Rom

mike you have an email
A question about spirit fm, is the core code to controll the fm chip anywhere openly published, i would like to look at it, just for curiosity
I think tomorrow i will try to record some radio :laugh:

sudden36 said:
mike you have an email
A question about spirit fm, is the core code to controll the fm chip anywhere openly published, i would like to look at it, just for curiosity
I think tomorrow i will try to record some radio :laugh:
Click to expand...
Click to collapse
My code is not published.
This phone uses a Broadcom BCM4329 FM/BT/WiFi combo chip.
The old CM7/MIUI FM app "driver" code is open and used hcitool to control the chip.
There's also a V4L driver written by Nokia for an earlier BCM chip that is more or less register compatible. BCM2048 if I recall correctly.
Beyond that, no open source code exists that I'm aware of, but I haven't really looked in the last 12+ months. The chips specs are secret and I've never found them, even on Chinese sites dedicated to confidential tech documents.

Thank you
Now my rom is perfect!!Thank you very much:victory:

Works great on the latest CM10.1 nightly and [email protected] Kernel 100p5
Thanks for the work everyone!

mikereidis said:
My code is not published.
This phone uses a Broadcom BCM4329 FM/BT/WiFi combo chip.
The old CM7/MIUI FM app "driver" code is open and used hcitool to control the chip.
There's also a V4L driver written by Nokia for an earlier BCM chip that is more or less register compatible. BCM2048 if I recall correctly.
Beyond that, no open source code exists that I'm aware of, but I haven't really looked in the last 12+ months. The chips specs are secret and I've never found them, even on Chinese sites dedicated to confidential tech documents.
Click to expand...
Click to collapse
In case it helps, here's the LG internal service manual which shows the technical paths and GPIOs etc.:
https://www.dropbox.com/s/etzanib7jgx7tp7/LG_P990_Optimus_2X_Star_Speed_service_manual.rar

What is the LG you have 990 or 970? Works on both?

bruno.u2 said:
What is the LG you have 990 or 970? Works on both?
Click to expand...
Click to collapse
I have a p990, I don't know if the p970 has the same audio chip and configuration.
You can try it if you want, as the settings are only temporary just reboot if it breaks anything

Related

[APP] Call recorder (ROOT access needed) [Nov 24 update]

I wrote this program because I was unable to find a good app capable of recording the other side of the call properly.
Except for AirVoice, all such apps record the speaker rather than the line, and you barely hear the other side in the recordings.
The guy who wrote AirVoice knew the trick but seemed to be very annoyed by the negative feedback from Android Market, where the users of various devices (with the list of supported ones clearly stated!) tried to install that program. Because it wasn't open source, I had to disassemble it in order to write what I wanted exactly.
So the app uses an esoteric HTC driver, and NEEDS THE ROOT ACCESS just to open the device. If you do "adb shell chmod 666 '/dev/voc*' ", it'll never ask you for root access (but you have to be ROOT to execute that command).
It writes the calls in either WAV (recommended) or MP3 format (not tested much; needs some time to encode the file after the call, but the size is about 4 times smaller), stereo (left ear is your voice, right is that of the other party), to "/sdcard/voix" directory.
The kernel driver itself is kinda buggy. Actually, the auto-answer mode is non-functional for kendon's & ninpo's kernels (others not tested). Do NOT select it in Settings unless you've got such ROM and particularly need to reboot your phone on each incoming call . It'd be nice if somebody try to fix that.
If you select "Ask each time" for any incoming calls, be sure to wait half a mo until the confirmation dialog appears. The "Foreground service" (default) setting is also recommended because Android may otherwise kill it if memory is low.
Any comments are welcome. I'm not sure that I'll ever add something to this program because I'm too lazy for that, but any bugs will reasonably be fixed. The code is open source, PM me if you're a programmer and have any ideas how to improve it.
=======================
NOV 24 UPDATE
Numerous improvements/corrections/bugfixes (I'm not removing the previous version as this one haven't been much tested).
Enjoy!
Thanks dude. Great job
avs333 said:
I wrote this program because I was unable to find a good app capable of recording the other side of the call properly.
Except for AirVoice, all such apps record the speaker rather than the line, and you barely hear the other side in the recordings.
The guy who wrote AirVoice knew the trick but seemed to be very annoyed by the negative feedback from Android Market, where the users of various devices (with the list of supported ones clearly stated!) tried to install that program. Because it wasn't open source, I had to disassemble it in order to write what I wanted exactly.
So the app uses an esoteric HTC driver, and NEEDS THE ROOT ACCESS just to open the device. If you do "adb shell chmod 666 '/dev/voc*' ", it'll never ask you for root access (but you have to be ROOT to execute that command).
It writes the calls in either WAV (recommended) or MP3 format (not tested much; needs some time to encode the file after the call, but the size is about 4 times smaller), stereo (left ear is your voice, right is that of the other party), to "/sdcard/voix" directory.
The kernel driver itself is kinda buggy. Actually, the auto-answer mode is non-functional for kendon's & ninpo's kernels (others not tested). Do NOT select it in Settings unless you've got such ROM and particularly need to reboot your phone on each incoming call . It'd be nice if somebody try to fix that.
If you select "Ask each time" for any incoming calls, be sure to wait half a mo until the confirmation dialog appears. The "Foreground service" (default) setting is also recommended because Android may otherwise kill it if memory is low.
Any comments are welcome. I'm not sure that I'll ever add something to this program because I'm too lazy for that, but any bugs will reasonably be fixed. The code is open source, PM me if you're a programmer and have any ideas how to improve it.
Click to expand...
Click to collapse
thanks, good job
but recorded sound a lit low, any chance to make it loud
Aha Thats Great Now i can prove my prank calls
no auto start, please add (i mean after re-boot)
Hi-Fi said:
but recorded sound a lit low, any chance to make it loud
Click to expand...
Click to collapse
No problems with sound volume here, but I'll see if I can add some basic volume normalisation...
Hi-Fi said:
no auto start, please add (i mean after re-boot)
Click to expand...
Click to collapse
Added as an option in Settings. Also fixed a triffle UI bug (forgetting to set proper dialog attributes).
Just tried this, works great on my Hero (Vanilla Eclair 4.0). Thank you very much for this one!
Interesting software. Could you possibly add a new feature: The app saves all calls, but deletes them, if you don't move them to another folder/to your PC.
This because I could record all of my calls, without the risk of making a huge 1Gt folder to fill up my memory. So if the user could choose how many recent calls (2,5,10) the app saves before deleting them I'd be great!
What about battery draining?
This great app is also tiny enough not to reduce drastically battery duration?
TIA
I'd love to see this generalized to not require the HTC driver. Do you think that would be possible?
cool app. anyone know if it would be possible to play an audio file directly to the caller? would come in handy rickrolling damn telemarketers
Very good work. Handy app, for sure.
Can you enable recording mid call?
Works in all Androis Devices? I have a Milestone.
Awesome idea, I've been looking for exactly this sort of software.
I'm having a bug I hope someone can help me with. When I start the program I get a prompt that says "Device does not exist, or its permissions cannot be changed." When I click "OK" it takes me to the screen to uninstall the program.
I'm running an Evo, fully rooted, NAND unlocked, running Virus Airbourne ROM and King #11 kernel.
I never get the prompt from the SuperUser app to give the app root access.
I tried the adb command but it gave me the error:
Unable to chmod dev/voc*: No such file or directory
Having same issue on rooted G2.
Sent from my T-Mobile G2 using XDA App
MercuryTangent said:
Awesome idea, I've been looking for exactly this sort of software.
I'm having a bug I hope someone can help me with. When I start the program I get a prompt that says "Device does not exist, or its permissions cannot be changed." When I click "OK" it takes me to the screen to uninstall the program.
I'm running an Evo, fully rooted, NAND unlocked, running Virus Airbourne ROM and King #11 kernel.
I never get the prompt from the SuperUser app to give the app root access.
I tried the adb command but it gave me the error:
Unable to chmod dev/voc*: No such file or directory
Click to expand...
Click to collapse
I experience the same problems on my rooted DINC. ROM and kernel are in sig.
Am I right to assume that this is a HTC Hero exclusive?
bemymonkey said:
Am I right to assume that this is a HTC Hero exclusive?
Click to expand...
Click to collapse
Likely so, but I'm hoping the dev will extend it or I can find a way to make it work
This is amazing app. The only thing I would beg the author to consider a white status bar icon for normal running service as colored icons there usually break the aestetics of Android UI. The icon can change or become colored while recording, but when only running in the background it should remain white.
I have the same problem (link to uninstall) on my Nexus One. Everything works fine on Hero

[APP] Media Volume Settings -[R]- 21/01/2011 -[U] 26/02/2011 -[V]- 1.4.0.0

Name: Media Volume Settings
Marketplace description:
Have you ever noticed that after opening some application or game, the volume for media playback (from zune for example) is higher or lower ? Or that some games have the volume too high ?
This application allows to fine tune that internal background media volume, separately from the main device volume. It can also be useful when an application or game has background music too loud or too soft.
Please note it DOESN'T work while connected to Zune, which restores volume to 100%. Also note it can't control in-call, device or notifications volume nor can keep the settings after a reboot due to WP7 features/limitations, about which I can't do anything.
Trial is ad-supported
Updated in 1.4:
- customizable presets
- better compatibility through the Dispatcher (should help ?)
- better interface, up/down buttons
__
Please remember that you can't update a trial application in the marketplace at the moment. You have to uninstall and reinstall it.
Notes:
I've noticed many application that can alter background/zune music volume (Bowling xx is one) and also some others that had their internal volume too high, so that even at volume 1/30 it was annoying at night (Krashlander is one). Some of them are now allowing internal volume regulation in later updates. This application solves both problems. I'm also looking into adding live tile (with volume value), not sure about the possibility of it...
Available in English,Italian and German .
before reporting it doesn't work, please note:
- it doesn't allow to make general volume higher
- media volume is used by most application and zune to control background music and sometimes sounds too (so you can fine tune with this)
- there are applications that modify this volume at start. There are many of these that don't set it back when they exits (and that's one of the main uses of the application)
- at boot, you always have 100% media volume
- when connecting to zune or synching wirelessly, it resets media volume to 100%
- while connected to zune, you can't alter volume
- it can't control in-call, notifications, alerts, ringtones, or door bell volume. I'm looking into controlling your dog bark, though
Source: http://forum.xda-developers.com/showthread.php?p=10881451
Zune Marketplace Link: http://social.zune.net/External/Lau...oneAppID=0774b6ec-f323-e011-854c-00237de2db9e
Please, anybody voting in the poll above, leave a comment with your phone model (and if it works). Thanks
Thank you !
That was my problem exactly, I had to restart my phone each time some application modified the volume especially when I wanted to use Zune and the music came out quite low. In fact I thought something was wrong with the speaker...
I’ve actually even used it with a game which had very loud background music.
Thanks, I'm going to release a free, ad-supported version in some days.
Trial updated to ad-support
The application has been updated with ad-supported, unrestricted use, trial version. Buying removes the ads. Please remember that you can't update a trial version in the marketplace at the time, you have to uninstall and reinstall it.
I've also found out that comparing two omnia7, both coming from germany, that one is quite louder than the other, even on max volume (both media and main device volumes at 100%). I've also checked the device gain in through diagnosis codes and they are the same. However I'd say the quiter one is already loud enough.
Or maybe that's to point on the fact that the louder one has been debranded by flashing a new rom ? (warranty repair, came broken from an extremely rude german internet shop which refused to replace it ! If you are going to buy one in Germany I can pm his name, so you can avoid what I've been through)
You should add all the different volumes settings to it... like system volume, notification volume, etc. Then it could be a one stop place to change volume for all aspects of the device.
thesecondsfade said:
You should add all the different volumes settings to it... like system volume, notification volume, etc. Then it could be a one stop place to change volume for all aspects of the device.
Click to expand...
Click to collapse
To the best of my knowledge, the wp7 toolkit doesn't allow you to manipulate device (system) volume. There is also no separate notification volume in windows phones, it uses the same as ringer/device volume.
link to zune market place
first of all nice application!
can you please tell me how to get the link to the application in marketplace once the application is uploaded. The only way i thought to view the application is search in zune software.
Thanks.
Thanks.
I got that problem too. First thing I did was trying to get something out of the assembly, but right in the middle of it I discovered the appropriate command.
I'm on the wrong computer now and can't remember what it is, but I think it's something that sound like OpenMarketPlacePage. If I remember correctly, you don't need to get the id, call the link, etc.
Version 1.3 with german localization
I've just pushed the update to 1.3 to the testing process. Besides adding localization for our german friends (who apparently couldn't understand what the application does), there are some interface tweaks.
Most importantly, I've found out that connecting the phone to Zune has the effect of resetting the media volume to 100% and keeping it there while connected.
Regarding managing other volumes, at the moment I can't see a way. I guess there are three volumes at least: device (main), in-call, and media volume.
thanks....
There are some reviews on the market which just say that it won't work. If anyone noticed that it fails to regulate the volume, please indicate which model of phone is tested on and maybe the carrier/nation as well as it's also weird it didn't work for 2 out of 2 australian users...
as of now:
Success on:
2 omnia7
1 dell venue
2 focus
2 hd7
5 unknown
Failed on:
1 surround
2 focus
1 hd7
2 unknown
Do you think you could control ring volume separately ?
Works on my Focus, although resets on reboot.
I like it, but I wish we could simply set the media volume level straight up (0-30) instead of fractions of the system volume. I'm assuming that's much harder to implement, though.
menger said:
Do you think you could control ring volume separately ?
Click to expand...
Click to collapse
Unfortunately not at the moment. From the looks of it, the sdk only exposes a few stuff to manage that background music volume, probably in order to manage it in-game easily.
Even if with some complex way one could control other volumes, it wouldn't pass certification because it would probably not use standard calls...
mcorrie1121 said:
Works on my Focus, although resets on reboot.
I like it, but I wish we could simply set the media volume level straight up (0-30) instead of fractions of the system volume. I'm assuming that's much harder to implement, though.
Click to expand...
Click to collapse
Glad you like it. Well, again, it would probably be nice to manage it that way, but at the moment the way media volume is designed completely forbid this. In fact at the beginning I was looking to implement something like this, but my guess is that this is how the volume settings work. After adapting a bit to it, it actually makes sense too.
At the beginning I was longing for an android-like, 6 channel volume mixer, but now I think they were too many and this is an easier way to manage volume.
The fact that it resets at reboot is another technical limitation/feature. The media volume is a 'soft' settings and I can't control what starts when the phone reboots. It's also a feature because if the volume got incorrectly set by some application (muted for example!) then you possibly wouldn't have a way to reset it.
What makes less sense is that it resets to 100% when connected to zune, which also stops the music. I'm sure there might be some explication behind it, it's just a tiny bit annoying...
maqwp7developer said:
first of all nice application!
can you please tell me how to get the link to the application in marketplace once the application is uploaded. The only way i thought to view the application is search in zune software.
Thanks.
Click to expand...
Click to collapse
Forgot to clarify:
in order to open your app marketplace page, you can do this in the code:
MarketPlaceDetailTask task = new MarketPlaceDetailTask();
task.Show();
while otherwise to know the product id or even the link for the application, once published, you can see it in the app hub details page.
It doesn't work on my HTC HD7. ever try to play a game with sound on this device no volume at all the sound is so ,so low.
jabtano said:
It doesn't work on my HTC HD7. ever try to play a game with sound on this device no volume at all the sound is so ,so low.
Click to expand...
Click to collapse
I'm sorry I'm probably misunderstanding you. Do you mean that you are trying to increase the general volume in a game using this application ?
Yes the overall volume on this device is bad in order to listen to tunes you have to use a headset otherwise there is no volume.
Sent from my HD7 using Board Express
However this app works great on my wifes focus. HTC HD7 has s volume issue HTC says to download there app that is much like this one it didn't work so I was hoping this one would.
Sent from my HD7 using Board Express

FM Radio

Does anyone know which FM Radio chip the Note has ?
My guess is a Silicon Labs dedicated FM chip, as is in the Galaxy S and S2 models. Perhaps it's accessible via /dev/fmradio.
If you call 5" a tablet, I think this Note may be the first major manufacturer tablet with officially supported FM radio. There are some esoteric Chinese tabs that support FM, and the original Dell Streak 5" has FM, but was never officially supported.
Can someone try the FM TwoO app and report if it works ? : https://market.android.com/details?id=ca.gc.crc.fmtwoo
I am also very interested to know if my FM app runs on this device, rooted or not: https://market.android.com/details?id=com.mikersmicros.fm
Thanks !
Someone has sent me debug logs (Thanks !) so I don't need any more. This device does have a Silicon Labs FM chip, and it appears that my app is working, although the emailer didn't say. He set Menu->Settings->Audio->Method to "Samsung2". It's possible "Samsung" would also work on a stock device.
Other than my curiousity about FM TwoO working, my question is answered. I'm tempted to close this thread, since I'm not here to try and promote my app, but I'll leave it open for now at least, should anyone want to discuss FM on this device, as appropriate for a Q & A forum. (?)
BTW, I get the impression that the Samsung FM app is better than other stock FM apps. It supports RDS, and I think AF, and on this device at least it seems to support recording, which I'm not sure any other FM app does.
hello
as i was already searching for any alternative FM Radio app that does not stream from the internet as there are millions and millions of streaming apps out there it was impossible for me to find them in the android market.
I liked the alternative radio app for my old Windows Mobile Device.
Now i own a Galaxy Note and tried the two apps
FM TwoO and Spirit FM Free.
It finds Radio Stations etc. But i get no sound from both apps.
I think i tried every possible sound setting.
I have Root on my Device but everything else is stock.
Is it supposed to not work on the Stock rom or can i help you with something like a debug output so your app can work on this device?
Just tell me
beowulf6 said:
hello
as i was already searching for any alternative FM Radio app that does not stream from the internet as there are millions and millions of streaming apps out there it was impossible for me to find them in the android market
Click to expand...
Click to collapse
Hi. There are almost no alternative FM apps for Android because Google refused and still refuses to provide an API. Just about every phone and chip manufacturer does FM differently and keeps their methods secret so it requires reverse engineering, which is very difficult and time consuming.
The CyanogenMod and MIUI ROMs have their own FM apps (for some devices only). FM TwoO works on some Galaxy S/S2 stock ROMs. My app Spirit tries to work on as many ROMs and chips etc. as feasible.
Now i own a Galaxy Note and tried the two apps
FM TwoO and Spirit FM Free.
It finds Radio Stations etc. But i get no sound from both apps.
I think i tried every possible sound setting.
I have Root on my Device but everything else is stock.
Is it supposed to not work on the Stock rom or can i help you with something like a debug output so your app can work on this device?
Just tell me
Click to expand...
Click to collapse
Finding stations etc. is the first obstacle. I'm happy to hear this works OK.
Sound is always the second obstacle; so many phones do this differently, even otherwise somewhat similar phones as Galaxy S and S2.
If the Audio Methods Samsung and Samsung2 don't work, we need a new Samsung3 method I guess. I think the S2 has the same issue. If I examine the stock FM app, and perhaps some logs, I should be able to determine what needs to be done.
Can you do this ? :
- Start the stock FM app, run for a few seconds, then stop it.
- Start my app, then send me logs with Menu->Help->EM Logs. In the email text please put "Galaxy Note" before pressing Send.
BTW, the stock S2/Note FM app seems pretty good, so I don't think you are missing too much from alternative apps at this time.
Also, I think my app may "work", more or less, if you start it while the stock app is running. I think the apps can co-exist simultaneously, but there are probably a few issues.
hello and thanks for your response.
You are right. The stock radio app is a lot better then the stock radio app on my windows mobile phone was. But still i dont like for example the really short textfield where the RDS text is written when the phone is in portait mode because most of the text is missing. It is better in landscape mode.
And of course alternatives are always good.
Your app works good when i keep the original radio app running in the background. (but i think the reception quality seems to be a bit worse with your app even on the same frequence. But i should test this more)
But it crashes as soon as i press the headphone/speaker button. Only a restart helps then to get rid of the stock radio-app and to get the radio working again.
i have send you a log file. hope it helps and keep up your work.
From my thread here: http://forum.xda-developers.com/showpost.php?p=21233829&postcount=2043
For Samsung Galaxy S, S2, Note, S3 etc:
Very experimental support for stock and stock derived ROMs with the Samsung Proprietary API. Works OK on my Galaxy S with Darky ROM Extreme Edition 10.2.
- Enable Settings->Debug->SA Proprietary.
- Restart the app.
http://www.mediafire.com/file/a12sm7m13smbjub/Spirit_FM_Radio_v120110.apk
- The Audio->Method is best set to the default of CyanogenMod, but might also work on Samsung, or even None or GalaxyS ALSA as a last resort.
Next release I'll re-enable the recording code and I think it will work on the Note, but might also work on Galaxy S/S2 devices.
If it works or not, please send me a log, best with SU/root:
Select Menu->Help-EM Logs, wait a few seconds, enter "Note" in the email text and press send.
I wish I could afford one of these Notes...
New release posted here: http://forum.xda-developers.com/showpost.php?p=21353990&postcount=2057
Jan 13: http://www.mediafire.com/file/52jo7vwy63576da/Spirit_FM_Radio_v120113.apk
Another shot at Samsung Proprietary support for Galaxy S2 / Note class devices, in addition to Galaxy S devices w/ FM.
As before, enable Settings-Debug->SA Proprietary and restart. SU/Root should not be needed.
Regards,
Mike.
At least one person reports this working on a a Galaxy S2. Please let me know, positive or negative.
I could REALLY use some help testing my FM app on a Note or S2 with a stock or stock derived ROM on which the stock FM app works.
I can't afford one, US/Canada versions have no FM anyway, and Samsung's Remote Test Lab seems just about useless.
The Remote Note I tried started the Feb 26 Market version of my app in the Proprietary FM API mode OK, so I think it's close to working, but that API requires an earphone/antenna plugged in, and the test device doesn't have that. And I can't get the debug logs or shell access either.
There's a Feb 28 version linked here: http://forum.xda-developers.com/showpost.php?p=23059662&postcount=2357
For a few weeks now, my app works on my Galaxy S with stock derived Darky ROMs using the Samsung API, and un-rooted.
Thanks !
Hey i just installed Spirit UI on galaxy s2 i9100G
am running on Rom jellyBam
app opens fine , i selected S2 dig. all i hear is noise
i live in egypt its ont on reg list
what should i do ?
mikereidis said:
I could REALLY use some help testing my FM app on a Note or S2 with a stock or stock derived ROM on which the stock FM app works.
I can't afford one, US/Canada versions have no FM anyway, and Samsung's Remote Test Lab seems just about useless.
The Remote Note I tried started the Feb 26 Market version of my app in the Proprietary FM API mode OK, so I think it's close to working, but that API requires an earphone/antenna plugged in, and the test device doesn't have that. And I can't get the debug logs or shell access either.
There's a Feb 28 version linked here: http://forum.xda-developers.com/showpost.php?p=23059662&postcount=2357
For a few weeks now, my app works on my Galaxy S with stock derived Darky ROMs using the Samsung API, and un-rooted.
Thanks !
Click to expand...
Click to collapse
I just downloaded. Will report soon.
Sent from my revived Galaxy Note
The first results are positive. I just listened to fm radio for about 15 minutes. It works through headphones and the speaker. But as far as I can tell the.reception seems to be somewhat worse than with the stock fm radio.
Phone is a N-7000 with stock ICS , rooted, PhilZ kernel. Are there any specific tests I should conduct?
Sent from my revived Galaxy Note
Mikereidis's post has almost one year, looking at the Spirit FM thread OT, Galaxy Note is supported since (at least) november afaik.
Hitch3ns said:
Hey i just installed Spirit UI on galaxy s2 i9100G
am running on Rom jellyBam
app opens fine , i selected S2 dig. all i hear is noise
i live in egypt its ont on reg list
what should i do ?
Click to expand...
Click to collapse
9100g is off topic here.
If it's the Unlocked version and you're a customer, then email me or post on the Q&A thread in my sig for info.
If it's the Unlocked version and you're NOT a customer, then please go away, I don't help pirates.
This thread is ancient. I've had a Note for at least 7-8 months now and it's fully supported, and will be supported by the coming Spirit2.
Please see my main thread: http://forum.xda-developers.com/showthread.php?p=13379669
I will now close this thread, thanks...

[Q] HTC One disable headset redial functionality

Not sure if this is the right forum. I found that double tapping the button on a headset causes HTC One to redial the most recent number in my call logs. I did find a thread with the same topic but it only mentions a workaround and not a solution. So I created a small app with a broadcast receiver to listen for headset events and perform the appropriate action (and hopefully disallow the device to take over). But no matter what i try, the device always ends up redialling. I tried digging into the source code to see how the device intercepts these events and found that the phone app registers a broadcastreciever for MEDIA_BUTTON intent with priority 1001. So i registered mine with a higher priority (tried 1002, then Integer.MAX_VALUE), but still the device takes over. Moving my apk to /system/app and setting the proper permissions didnt help either. Registering my receiver with AudioManager.registerMediaButtonEventReceiver or AudioManager.registerMediaButtonEventReceiverForCalls (using reflection) doesn't help either because i can see from the logs that phone app intercepts the event even before audio service does. I can see clearly that the MediaButtonReceiver in Phone.apk is the one performing the redial. So if anyone has had success with intercepting headset events before the phone app, please guide me so that i can go about tweaking my ONE so that i can use headset controls like in iPhone.
P.S. The closest possible solution that i came across is to write a service which makes sure that there is always a dummy entry at the top of call logs (MediaButtonReceiver in the phone app does not redial if the most recent number is blank, -1 or -2), then install an app like Jays or headset button controller to get the desired functionality. But this is an ugly workaround because the call logs will always have a dummy entry at the top and not all headset events are propogated to these apps, meaning they dont work most of the time.
Note. This redial functionality seems to be specific to HTC.
Solved
Juja01 said:
Not sure if this is the right forum. I found that double tapping the button on a headset causes HTC One to redial the most recent number in my call logs. I did find a thread with the same topic but it only mentions a workaround and not a solution. So I created a small app with a broadcast receiver to listen for headset events and perform the appropriate action (and hopefully disallow the device to take over). But no matter what i try, the device always ends up redialling. I tried digging into the source code to see how the device intercepts these events and found that the phone app registers a broadcastreciever for MEDIA_BUTTON intent with priority 1001. So i registered mine with a higher priority (tried 1002, then Integer.MAX_VALUE), but still the device takes over. Moving my apk to /system/app and setting the proper permissions didnt help either. Registering my receiver with AudioManager.registerMediaButtonEventReceiver or AudioManager.registerMediaButtonEventReceiverForCalls (using reflection) doesn't help either because i can see from the logs that phone app intercepts the event even before audio service does. I can see clearly that the MediaButtonReceiver in Phone.apk is the one performing the redial. So if anyone has had success with intercepting headset events before the phone app, please guide me so that i can go about tweaking my ONE so that i can use headset controls like in iPhone.
P.S. The closest possible solution that i came across is to write a service which makes sure that there is always a dummy entry at the top of call logs (MediaButtonReceiver in the phone app does not redial if the most recent number is blank, -1 or -2), then install an app like Jays or headset button controller to get the desired functionality. But this is an ugly workaround because the call logs will always have a dummy entry at the top and not all headset events are propogated to these apps, meaning they dont work most of the time.
Note. This redial functionality seems to be specific to HTC.
Click to expand...
Click to collapse
Finally got this working. It can be done by modifying the keylayout file and mapping scancode 226 to MEDIA_STOP instead of HEADSETHOOK and then writing a service which can intercept and handle this. As for making sure the service has highest priority in intercepting media button events we need to register a content observer for "media_button_receiver" setting (The device changes this setting whenever an application registers itself as a registerMediaButtonEventReceiver), and on every change register ourselves again as the mediaButtonEventReceiver so that we always stay on top of the stack.

[Q] Bluetooth call button

Okay, I bought a bluetooth headset and when pressing the call button it does nothing.
I am actually trying to write an app using the Gmate (enables bluetooth GSM phone calls) to make calls.
For this I would like my app to start upon pressing the call button.
I have tried the following:
-Use remapping apps (does nothing)
-Enable voice in framework (not possible in android 4.3)
-Using mediabutton intent (does not enable call button)
-Reading the android source. Only found that telephone uses something like IBluetoothPhoneHeadset.Stub. I tried to include this but that wasn't possible.
The only three options I can still think of are:
-cross-compiling a bluetooth library and using this to read bluetooth input.
-Create custom intents in android source and then either recompiling android rom or update.zip.
-Edit android telephony source.
Since all these options take a lot of time and the new android version will be released soon I decided to post this question.
Perhaps somebody knows a quick fix?
My bluetooth headset: Jabra street 2
Thanks for reading and I really hope someone can help me.

Categories

Resources