EDIT: Oneplus One can never support FM, see final post. Was: SpiritFM on Oneplus One

Status
Not open for further replies.
Search This thread

mikereidis

Inactive Recognized Developer
Jan 28, 2011
7,823
4,146
Ottawa/Gatineau, Canada
This is a topic to talk about a possible support of SpiritFm to Oneplus One...
How is the situation? Can we aspire to have RadioFM?

No, I don't think 1+1 is FM capable because I think the CM folk would have said something positive about FM by now, and similar Oppo devices would also have FM.

First step to test further than people have already is to load a kernel that supports the Qualcomm V4L Iris FM driver. The stock kernel does not support it.

At this point, Spirit1 should start without error.

Then, we can see if RSSI at top left of Spirit1 is over 10-20 when tuned to a good station, while a wired headset is plugged in to act as the antenna.

Next post is copied from Spirit1 main/general thread.
 
  • Like
Reactions: thanatos87

mikereidis

Inactive Recognized Developer
Jan 28, 2011
7,823
4,146
Ottawa/Gatineau, Canada
So that means Kernel wasn't built with proper commits or changes? What should I ask the kernel dev to do now so we can be sure?

_____________
Sent from my GT-I9300 powered by Temasek Rom & Boeffla Kernel
Fueled by 7000mAh ZeroLemon Battery

From a USB connected PC run "adb shell". Or use a terminal or terminal emulator app to open a shell command prompt. You should get a shell prompt like this:

Code:
shell@m8:/ $
Run "lsmod". If the kernel does not have modules support, you should see this error message:

Code:
shell@m8:/ $ lsmod
/proc/modules: No such file or directory
1|shell@m8:/ $
If there is no "lsmod" command, try "ls /proc/modules". This is bad:

Code:
1|shell@m8:/ $ ls /proc/modules
/proc/modules: No such file or directory
1|shell@m8:/ $
This would be good, but indicate no iris transport module loaded:

Code:
shell@m8:/ $ lsmod
1|shell@m8:/ $
This is what you REALLY want:

Code:
root@evita:/ # lsmod
radio_iris_transport 2286 0 - Live 0x00000000
root@evita:/ #
If there is no error, but also no iris transport module loaded, look for the module with "ls -l /system/lib/modules":

Code:
 root@evita:/ # ls -l /system/lib/modules
-rw-r--r-- root     root         5992 2008-08-01 08:00 radio-iris-transport.ko
-rw-r--r-- root     root         2559 2008-08-01 08:00 scsi_wait_scan.ko
root@evita:/ #
Then do "su" and "insmod ...":

Code:
 255|root@evita:/ # su
root@evita:/ # insmod /system/lib/modules/radio-iris-transport.ko  
255|root@evita:/ #
To see what might have happened, run "dmesg" and look at the last few lines.
 

tixatixa

Member
Jul 8, 2013
12
2
I tested on Terminal Emulator:
lsmod
/proc/modules: No such file or directory

and

ls /proc/modules
/proc/modules: No such file or directory

With: Franco Kernel and MAHDI rom
 

mikereidis

Inactive Recognized Developer
Jan 28, 2011
7,823
4,146
Ottawa/Gatineau, Canada
I tested on Terminal Emulator:
lsmod
/proc/modules: No such file or directory

and

ls /proc/modules
/proc/modules: No such file or directory

With: Franco Kernel and MAHDI rom

That means that kernel modules are not enabled. In most cases so far*, the FM driver can't work if built into the kernel. It MUST be a loadable module or a Qualcomm bug arises and may cause reboot. (*Only exception in years is HTC One M8, presumably bug is fixed in it's kernel.)


Here is the crux of what hi_cannon posted here: http://xdaforums.com/showpost.php?p=54226570&postcount=8097

hi_cannon said:
You just need to change three lines in the kernel config file which re-enables module support and to build the iris module itself.
Here's the link: https://github.com/hicannon/android...mmit/669834afabfa6aa607c80f4ff14afd9c15b4b3c3

These are the 3 lines:

CONFIG_MODULES=y
CONFIG_RADIO_IRIS=y
CONFIG_RADIO_IRIS_TRANSPORT=m
 

Arrjaan

Senior Member
May 5, 2014
105
44
Utrecht
That means that kernel modules are not enabled. In most cases so far*, the FM driver can't work if built into the kernel. It MUST be a loadable module or a Qualcomm bug arises and may cause reboot. (*Only exception in years is HTC One M8, presumably bug is fixed in it's kernel.)


Here is the crux of what hi_cannon posted here: http://xdaforums.com/showpost.php?p=54226570&postcount=8097

Here's the link: https://github.com/hicannon/android...mmit/669834afabfa6aa607c80f4ff14afd9c15b4b3c3

These are the 3 lines:

CONFIG_=y
CONFIG_RADIO_IRIS=y
CONFIG_RADIO_IRIS_TRANSPORT=m

I looked for the lines where I could enable that, but I couldn't find the right file here:

https://github.com/franciscofranco/one_plus_one/tree/cm-11.0/arch/arm/configs

But after doing a search, I found the lines were already in here:

https://github.com/franciscofranco/...c3cdb/arch/arm/configs/msm8226-perf_defconfig
https://github.com/franciscofranco/...28fb7c3cdb/arch/arm/configs/msm8226_defconfig

Still, after retesting, I got the same result:

Code:
D:\AndroidSDK\platform-tools>adb shell
shell@A0001:/ $ lsmod
lsmod
/proc/modules: No such file or directory
1|shell@A0001:/ $ ls /proc/modules
ls /proc/modules
/proc/modules: No such file or directory
1|shell@A0001:/ $

Any suggestion for further testing? I am by no means an expert, but I just want to help if possible.
 
Last edited:

mikereidis

Inactive Recognized Developer
Jan 28, 2011
7,823
4,146
Ottawa/Gatineau, Canada
I looked for the lines where I could enable that, but I couldn't find the right file here:

https://github.com/franciscofranco/one_plus_one/tree/cm-11.0/arch/arm/configs

But after doing a search, I found the lines were already in here:

https://github.com/franciscofranco/...c3cdb/arch/arm/configs/msm8226-perf_defconfig
https://github.com/franciscofranco/...28fb7c3cdb/arch/arm/configs/msm8226_defconfig

Still, after retesting, I got the same result:

Code:
D:\AndroidSDK\platform-tools>adb shell
shell@A0001:/ $ lsmod
lsmod
/proc/modules: No such file or directory
1|shell@A0001:/ $ ls /proc/modules
ls /proc/modules
/proc/modules: No such file or directory
1|shell@A0001:/ $
Any suggestion for further testing? I am by no means an expert, but I just want to help if possible.

Sorry, I don't really have much time for helping you out with kernel building. It looks to me like https://github.com/franciscofranco/.../arch/arm/configs/cyanogenmod_bacon_defconfig might be the config file.


Another approach is to pull in the fix CM did on the HTC One M8. The FM driver is in the kernel and it works.
 

Rene_ajax

Senior Member
Jun 17, 2012
1,048
153
26
Amsterdam
very interesting topic I read different things one says it has FM radio but the other say it hasnt. I hope theres a genius could enable this awesome featute on this phone!
 

mikereidis

Inactive Recognized Developer
Jan 28, 2011
7,823
4,146
Ottawa/Gatineau, Canada
very interesting topic I read different things one says it has FM radio but the other say it hasnt. I hope theres a genius could enable this awesome featute on this phone!

EVERY phone has an FM/BT/WiFi combination chip.

Only a minority of phones has the FM antenna pin connected to the wired headset. The rest ground the antenna pin which means FM can never be made to work, unless you want to spend thousands of dollars for a custom mod to the phone. (LOL.)

This is one reason why there is often confusion about whether phones "have FM". They all have the hardware chip. Most don't have the needed connection.
 
  • Like
Reactions: Rene_ajax

mikereidis

Inactive Recognized Developer
Jan 28, 2011
7,823
4,146
Ottawa/Gatineau, Canada
I have OnePlus One and try everything if you need. I really want fm radio to my phone

OK, please do and report your results.

I've put enough information in this thread for a person with the skills needed to test.

But I don't have the time to build kernels or assist people without that skill to build them.


But chances are very small IMO. If there is no stock FM app, it's VERY probable that the FM antenna pin is disabled in hardware by grounding it. I don't even think Oppo has ANY Android devices with FM radio.
 

compax

New member
Sep 27, 2014
2
0
It would be very nice to have FM radio in my oneplus one, i really miss it from my Old phone.
I've just bought the cheapest smart phone that i could find on the marked and use that one as a FM radio/media phone.
The best solution would still be that oneplus one had that option, but the other solution works fine for me.
 

mikereidis

Inactive Recognized Developer
Jan 28, 2011
7,823
4,146
Ottawa/Gatineau, Canada
It would be very nice to have FM radio in my oneplus one, i really miss it from my Old phone.
I've just bought the cheapest smart phone that i could find on the marked and use that one as a FM radio/media phone.
The best solution would still be that oneplus one had that option, but the other solution works fine for me.

If that works for you, then that's fine.

But when people do not INSIST on FM when they want it, that is precisely why manufacturers decide their phones don't need FM.

I've heard from a HUGE number of people who want FM, but "love" their phone too much to change it. And then they hope I can perform some kind of magic, LOL.
 

compax

New member
Sep 27, 2014
2
0
#Mikereidis
I thought you could do magic...... Naaa just kidding :eek:)

As i said in my post, it works fine for me with 2 phones so i do not complain, I just said that it would be nice if oneplus one had an FM radio.

oneplus one is such a cheap phone anyway so i could afford a second one with an FM radio which i use when im at the gym or travling around in other countries so it's not a big deal for me.

---------- Post added at 08:40 AM ---------- Previous post was at 08:32 AM ----------

:)
 

jasonx3

Senior Member
Dec 30, 2013
62
9
If that works for you, then that's fine.

But when people do not INSIST on FM when they want it, that is precisely why manufacturers decide their phones don't need FM.

I've heard from a HUGE number of people who want FM, but "love" their phone too much to change it. And then they hope I can perform some kind of magic, LOL.

I'm sure people didn't insist because One plus promised FM radio on Reddit AMA (Before launch) alone with stereo speakers etc.. :cyclops::cyclops: and turned out empty. myself too finding awkward to have 2 phones because i need FM radio.
 

mikereidis

Inactive Recognized Developer
Jan 28, 2011
7,823
4,146
Ottawa/Gatineau, Canada
I'm sure people didn't insist because One plus promised FM radio on Reddit AMA (Before launch) alone with stereo speakers etc.. :cyclops::cyclops: and turned out empty. myself too finding awkward to have 2 phones because i need FM radio.

Oh, that's a shame then.

It only takes about 1 cent/penny worth of tiny parts to connect the FM antenna pin to the wired headset jack.

Of course more than 50% of phones sold today lack the same penny worth of parts too. Every recent Nexus, every iPhone, every recent Samsung or Motorola flagship. most flagships sold in North America,...


Software maintenance costs for an FM app could be more than that though, especially for a limited sales device.But if it's a Qualcomm FM/combo chip, Qualcomm has a free, open source app available that's even included in a few CM11 ROMs.
 
Every recent Nexus, every iPhone, every recent Samsung or Motorola flagship. most flagships sold in North America,...

Yes, but including FM is one less reason to sell streaming music and cloud storage for music collections. Its all about the aftermarket revenue. Even free music has adds supporting the app. This is going the way of SD cards. They state it was difficult to support SD. Really? Cameras have no prob. Was a forced move to cloud.
 

mikereidis

Inactive Recognized Developer
Jan 28, 2011
7,823
4,146
Ottawa/Gatineau, Canada
Yes, but including FM is one less reason to sell streaming music and cloud storage for music collections. Its all about the aftermarket revenue. Even free music has adds supporting the app. This is going the way of SD cards. They state it was difficult to support SD. Really? Cameras have no prob. Was a forced move to cloud.

Of course.

And that benefits Google and North American carriers.

But what benefit does it provide OnePlus One (subject of this thread), other than a bit less work to make a ROM ?
 

msri3here

Senior Member
Aug 27, 2010
462
130
Pune
That means that kernel modules are not enabled. In most cases so far*, the FM driver can't work if built into the kernel. It MUST be a loadable module or a Qualcomm bug arises and may cause reboot. (*Only exception in years is HTC One M8, presumably bug is fixed in it's kernel.)


Here is the crux of what hi_cannon posted here: http://xdaforums.com/showpost.php?p=54226570&postcount=8097

Here's the link: https://github.com/hicannon/android...mmit/669834afabfa6aa607c80f4ff14afd9c15b4b3c3

These are the 3 lines:

CONFIG_MODULES=y
CONFIG_RADIO_IRIS=y
CONFIG_RADIO_IRIS_TRANSPORT=m

I looked for the lines where I could enable that, but I couldn't find the right file here:

https://github.com/franciscofranco/one_plus_one/tree/cm-11.0/arch/arm/configs

But after doing a search, I found the lines were already in here:

https://github.com/franciscofranco/...c3cdb/arch/arm/configs/msm8226-perf_defconfig
https://github.com/franciscofranco/...28fb7c3cdb/arch/arm/configs/msm8226_defconfig

Still, after retesting, I got the same result:

Code:
D:\AndroidSDK\platform-tools>adb shell
shell@A0001:/ $ lsmod
lsmod
/proc/modules: No such file or directory
1|shell@A0001:/ $ ls /proc/modules
ls /proc/modules
/proc/modules: No such file or directory
1|shell@A0001:/ $

Any suggestion for further testing? I am by no means an expert, but I just want to help if possible.

Sorry, I don't really have much time for helping you out with kernel building. It looks to me like https://github.com/franciscofranco/.../arch/arm/configs/cyanogenmod_bacon_defconfig might be the config file.


Another approach is to pull in the fix CM did on the HTC One M8. The FM driver is in the kernel and it works.

https://github.com/franciscofranco/one_plus_one/blob/cm-11.0/arch/arm/configs/franco_defconfig

I think this is the config file that needs to be changed.
Can someone modify this to make changes as suggested and check?
I dont know how to build a kernel and moreover, dont have my OnePlus One yet in my hands :(
 

mikereidis

Inactive Recognized Developer
Jan 28, 2011
7,823
4,146
Ottawa/Gatineau, Canada
https://github.com/franciscofranco/one_plus_one/blob/cm-11.0/arch/arm/configs/franco_defconfig

I think this is the config file that needs to be changed.
Can someone modify this to make changes as suggested and check?
I dont know how to build a kernel and moreover, dont have my OnePlus One yet in my hands :(

Find someone to do it. I don't have the time.

One bit of good news is that the HTC One M8 fix allowing the use of Qualcomm FM drivers directly in the kernel, without modules, has been spreading to other CM builds, such as for my One X LTE.
 
Status
Not open for further replies.

Top Liked Posts

  • There are no posts matching your filters.
  • 4
    After some hours of figuring out, I've managed to build the modified kernel. For everyone that wants to test as well, it's over here [source]. I enabled the FM module:

    Code:
    root@A0001 :/ # lsmod
    root@A0001 :/ # insmod /system/lib/modules/radio-iris-transport.ko
    root@A0001 :/ # lsmod
    radio_iris_transport 4267 0 - Live 0x0000000
    I got a constant signal strength of zero, while being in my room with my FM radio at home turned on. I've send you the log to confirm.

    Thanks.

    I can confirm from the debug log that everything APPEARS to work, except that RSSI is always 0.

    Changing Debug->QCom Antenna changed nothing.


    So, as far as I am concerned, the FM antenna pins are both grounded which renders FM capability in the Qualcomm FM/combo chip useless. :(

    I am closing this thread because there is nothing more to say unless by some miracle we find some hidden magic antenna switch, or we find that it uses an FM-disabling firmware that can be changed.

    Please post any further queries in the general thread: http://xdaforums.com/showthread.php?t=1059296

    Anything is possible, but I officially give up at this point.

    Please feel free to ask the OnePlus One people why FM was not provided as originally promised, and if future devices will support FM.
    2
    That post was from August.

    I do not know exactly what he did, but IMO the only way to prove/disprove is to get the Qualcomm open source FM app, or any of my Spirit apps "working" or at least seeming to work, with no errors, and then...

    It will be disproven (IE FM is impossible) if ALL of the following are true:

    - Wired headset is plugged in for antenna.
    - RSSI signal strength at top left is negative or around 0 when tuned to a known strong station.
    - No RDS information is shown.
    - Seek just runs through the band and doesn't stop at all or doesn't stop until it wraps around.
    - You try the above using Spirit1 with Menu-> Settings-> Debug-> QCom Antenna set to "External" and restart Spirit1. Then try again with it set to "Internal" and restart Spirit1 again.

    After testing, send me a debug log from Spirit1 to confirm. Tap the frequency button, enter the number 7 and tap "OK". After 20 seconds or so, press Send from your email client.

    After some hours of figuring out, I've managed to build the modified kernel. For everyone that wants to test as well, it's over here [source]. I enabled the FM module:

    Code:
    root@A0001 :/ # lsmod
    root@A0001 :/ # insmod /system/lib/modules/radio-iris-transport.ko
    root@A0001 :/ # lsmod
    radio_iris_transport 4267 0 - Live 0x0000000

    I got a constant signal strength of zero, while being in my room with my FM radio at home turned on. I've send you the log to confirm.
    1
    This is a topic to talk about a possible support of SpiritFm to Oneplus One...
    How is the situation? Can we aspire to have RadioFM?

    No, I don't think 1+1 is FM capable because I think the CM folk would have said something positive about FM by now, and similar Oppo devices would also have FM.

    First step to test further than people have already is to load a kernel that supports the Qualcomm V4L Iris FM driver. The stock kernel does not support it.

    At this point, Spirit1 should start without error.

    Then, we can see if RSSI at top left of Spirit1 is over 10-20 when tuned to a good station, while a wired headset is plugged in to act as the antenna.

    Next post is copied from Spirit1 main/general thread.
    1
    very interesting topic I read different things one says it has FM radio but the other say it hasnt. I hope theres a genius could enable this awesome featute on this phone!

    EVERY phone has an FM/BT/WiFi combination chip.

    Only a minority of phones has the FM antenna pin connected to the wired headset. The rest ground the antenna pin which means FM can never be made to work, unless you want to spend thousands of dollars for a custom mod to the phone. (LOL.)

    This is one reason why there is often confusion about whether phones "have FM". They all have the hardware chip. Most don't have the needed connection.