yashsingh1/xdaforums huggingface dataset:
[Legend General] TheLamma:
>No, the headphones are completely optional.

Okay, so hanging must be for a different reason.

>OK, re: the bugs. Let's just forget about this App Inventor app and call it a prototype.

Okay, well I look forward to the next version. [=

>And there ARE the letters "FM" in the notification bar. I'm not sure if that's an icon or just text,

Weird, because I sure didn't see that...

>Hypothetically (famous last words), I may have something presentable/usable in the next 1-7 days.

I wonder if the recording function will work...

Ooooooohhhhhhh. I (im)patiently await! ;]
[Legend General] mikereidis:
Tuning is working now. :)

This is the CodeAurora version, so there may be extra features. Some screenshots:

(Imageshack not responding for some reason. See my album: http://xdaforums.com/album.php?albumid=3408 )

Removing Imageshack IMG URLs...
[Legend General] branch8:
After reinstalling the api i'm now just getting FC's. (see attached log)

Given your intentions to move to a straight java app is there any use in continuing to try to test the appinventor version?
[Legend General] TheLamma:
Yeah, I wonder the same as Branch.

Those screenshots - do you mean they're from the app you're basing yours on, or one you've made?

Either way, it looks like some sweet features.

And what's this? Scanning by genre? How can it tell that...? Unless its possibly into the station's frequency..?
[Legend General] mikereidis:
Thanks for the log.

No, at this point I think it's pointless to trouble-shoot and try to fix this current app.

It's become clear to me that trying to create a robust, professional app with App Inventor is not feasible at this time.

I think my new app should be usable within a week or so.
[Legend General] mikereidis:
Yes, forget about this current app. Given the progress I've made over the last few 12+ hours days, I think this new app will be usable very soon. Let's call this new app "Spirit version 2", or perhaps "Free Spirit" since it's free.

The screenshots are from the new app currently running on my phone. It's the CodeAurora app that I've modified to be able to run on different firmwares (IE de-frameworked). I also added the basic code to allow tuning, so it's actually working a bit now.

I just added speaker/headset switching, so at this point, I think this new app is only missing one thing relative to the CM app: volume control. I see that operating the hardware volume buttons shows the standard Android media volume control (instead of the Ringer volume). Adding the volume feature shouldn't be too hard. The android volume control only supports 16 different values though.

The search categories are based on RDS data.

When I get the RDS working, the search categories may hopefully become functional, assuming your broadcasters of interest transmit this RDS. I'm not positive right now though, the TI chip might not allow directly scanning by program type, but it may be possible indirectly.

CodeAurora is a Qualcomm venture, to create open, Apache type licensed code for use with their chipsets by phone OEMs, carriers etc. A bunch of code in there is specific to the Qualcomm "TAVARUA" FM chip, and I have no idea what devices use that chip. Most are TI or Broadcom now. So there are features, like FM transmission, that will only work with the Tavarua chip, until someone adds the codes for other chips.

http://en.wikipedia.org/wiki/Radio_Data_System

"PTY (programme type)

This coding of up to 31 pre-defined programme types (e.g., in Europe: PTY1 News, PTY6 Drama, PTY11 Rock music) allows users to find similar programming by genre. PTY31 seems to be reserved for emergency announcements in the event of natural disasters or other major calamities."
[Legend General] TheLamma:
Well it sounds like you're making some awesome progress. I eagerly await. [=
[Legend General] mikereidis:
:) Now I'M stoked ! 5.5 days from old AI app to new Java app, with credit due to CodeAurora and a few lines of code credited to MIUI and/or CM ;) Most of that time was spent learning more about the Android SDK and learning the Aurora code.

Here's a "sneak peek" at version 2:

Direct:

https://docs.google.com/uc?id=0B7UP...Tg4YjYtYzkyODg2MDdiMDhj&export=download&hl=en

Page:

https://docs.google.com/leaf?id=0B7UP2cIqyQXGYTY3ZDQ2MDEtYzk4ZC00Yjc2LTg4YjYtYzkyODg2MDdiMDhj&hl=en

It's "hot off the presses", so who knows what strange bugs it might have on your phone. But it seems to be working nicely on mine.

It shouldn't need any of the previous files, but they shouldn't interfere. Due to the shared lineage with the CM app, it's possible there might be some conflict in naming or somesuch.

As before, it requires a working hcitool. No "daemon mode", but I'll be investigating the dbus APIs for direct bluetooth access. But hcitool works fine for now. It will create a file named "cmdout" in the /sdcard directory; this is used to read FM registers.

It needs SU (root) only to run the speaker/headset switching code, due to the bug in my older CM ROM.

You MUST switch bluetooth on manually before starting. When it starts, it should power up, go to speaker and tune to 98.1.

Note: The app has some code to handle muting during phone calls. I haven't tested to see if it works yet. If someone would like to test incoming/outgoing to see what happens, please let me know. I don't use this phone as a phone anymore, LOL. :)

For some reason, this app doesn't show up in the "recent applications" list. It can be returned to by (re)launching via home screen or whatever.

------------------

Instructions:

Click on "98.1" and get a dialog to enter a new frequency. Click to left/right and go down/up one channel. Long press on either to seek to next channel with an RSSI of 24 or greater.

Hardware volume control buttons should work. Turn up if you hear no sound. Hit speaker at lower left to mute, again to unmute. Power button should go off and on.

Find a favourite station and long press one of the 5 preset buttons to set etc.

Menu button gives some non-working options like scan. "Start recording" creates file(s) on the SD card, but I haven't seen if an actual recording can be made (it can't as of now I think). "Disable Speaker" switches audio to headset. "Enable Speaker" goes back to speaker.

Under "Settings", the mono/stereo switch should work. The "Regional Band" may partly work for other areas, but I have some code fixed to North America at the moment. Revert to factory defaults should work.

There should be multiple preset lists configurable but I haven't checked that much.

The display should reconfigure between landscape and portrait.

Please report back here...
[Legend General] TheLamma:
First impressions:

Pressing the speaker button still leaves sound, but not as loud, when headset isn't plugged in. Would there be a way for it to detect a headset? My local stations are a good thirty kms away, so I was mostly getting fuzz.

When I plug the headset in, though, all audio is cut, no matter if it's on speaker or headset modes, and is still cut when I take it out. I have to hit the power button on and off to get it back. It's kind of hard to test the other features if I can't hear audio. [=

I'll experiment some more, and see if there's anything else I can do.

EDIT: two more things. I think you should alphabetitize the band frequencies. It is for the most part, but China is after France or something. Also, why is the North America AND United States?

The second thing is that I tapped the "record" option and it FC'ed (so that doesn't work), but the audio kept playing.... but, unlike the last app, it appeared once again in the notification bar (without me opening it again) where I could turn it off no problem. =D However, I had it on headset audio (It's quieter that way... It still plays audio, but at like half volume. I should mention that the base audio is WAY too loud, at least when all you get is fuzz. Could you decrease the DB? This is on minimal volume...) and it reset itself to speaker audio.

EDIT 2: I just realized that my phone still thinks it's playing audio, because it has a very quiet fuzz coming from the speakers, even though the app is off. It's like something internally didn't turn off. I've tried resetting bluetooth, wifi, etc, to no avail. Here comes another reboot. [=
[Legend General] mikereidis:
Thanks for testing TheLamma. I'm thrilled to hear it's at least more or less working for you so soon after I started version 2.

The code is there to detect headset. I disabled it to allow antenna-less operation. Do you think it would be better to re-enable the code as is so it enforces the insertion of a headset antenna, or just inform the user that an antenna is recommended ?

I'll look into your speaker/headset issues. I saw something weird myself.

Yes, I'll re-alphabetitize. The United States is likely effectively there twice as it's such an awesome country. ;)

EDIT: There are some slight differences in the code for US versus North America. I also realise now that certain

areas (Europe and Japan) are favoured by being at the top of the list instead of alphabetical. I'd bet you were happy

to see North America conveniently at the top, even though (or perhaps because) it's the default. So, for now at least

I'll leave this the way CodeAurora set it up. If anyone else has an opinion, please speak up.

Record didn't FC for me. It created an empty file on SDcard each time. I'll disable it though until it works as most people won't read instructions/release notes and will just experiment.

I suspect that it was the FMRadio Service that FC'd. Android automatically restarts services that crash after 5 seconds or so and that's why the "FM" reappeared in the notification bar.

The version 1 app supported 100 volume steps. The standard Android media volume only supports 16 steps including 0 volume. I will try making volume an exponential function, more like decibels than linear. I hope that 16 steps will be sufficient, but if not, it would require code that goes beyond standard Android media volume control. I doubt many (any?) apps do that and I'd think Google must have thought 16 steps are sufficient.

I'm guessing the "quiet fuzz" is due to the analog path from FM radio still being open, despite the FM chip being off. I'll add some code to shut that path down completely when the app powers down FM.
[Legend General] TheLamma:
>The code is there to detect headset. I disabled it to allow antenna-less operation. Do you think it would be better to re-enable the code as is so it enforces the insertion of a headset antenna, or just inform the user that an antenna is recommended ?

I would like to see it automatically switch modes. Headset in, music on headset. No headset, music on speaker. With an option to disable in settings, of course.

>Yes, I'll re-alphabetitize. The United States is likely effectively there twice as it's such an awesome country. ;)

Hah! Canada is way cooler.

>There are some slight differences in the code for US versus North America. I also realise now that certain areas (Europe and Japan) are favoured by being at the top of the list instead of alphabetical. I'd bet you were happy to see North America conveniently at the top, even though (or perhaps because) it's the default. So, for now at least

I'll leave this the way CodeAurora set it up. If anyone else has an opinion, please speak up.

Okay, if that's the norm, it's alright. I just thought it was odd.

>I suspect that it was the FMRadio Service that FC'd. Android automatically restarts services that crash after 5 seconds or so and that's why the "FM" reappeared in the notification bar.

Oh, so it acts as a service, then? Whatever it was, I didn't have restart it this time.

>The version 1 app supported 100 volume steps. The standard Android media volume only supports 16 steps including 0 volume. I will try making volume an exponential function, more like decibels than linear. I hope that 16 steps will be sufficient, but if not, it would require code that goes beyond standard Android media volume control. I doubt many (any?) apps do that and I'd think Google must have thought 16 steps are sufficient.

I'm fine with the 16, since it's standard. But I do admit more would be nice.

>I'm guessing the "quiet fuzz" is due to the analog path from FM radio still being open, despite the FM chip being off. I'll add some code to shut that path down completely when the app powers down FM.

That totally makes sense. I bet it'll fix it.
[Legend General] mikereidis:
Gee I haven't posted too recently. Faster to develop when focusing.

I'm hoping to have an update available over the next few days, perhaps Mon. or Tues. at latest.

I have RDS data working now. Looks pretty cool... :) Stations that transmit song/artist names (or whatever) could enable a google search button for lyrics or other info. ;)

I've now added support for stock and Blayo type ROMs that have /system/bin/btipsd_cli but don't have /system/bin/hcitool .

I just added experimental support for Broadcom chips, which seem a good deal more popular than TI chips.

Like the CM app for Broadcom however, it only supports 3 functions: On, Off, and Set Frequency. (There's volume support in the CM framework though.) I'll be adding much more functionality of course.

So although the CM FM app for Legend and other TI chip devices has relatively few functions, it's clearly more functional than the CM FM app for Broadcom.

After some "spelunking" I found a few functions about enabling the Tx antenna in the libbluedroid library. Perhaps those might enable Tx. I'll have to try with the TI btipsd_cli utility.

I've been running CM7 stable for a few days and the fixes for FM audio support are working nicely. With the newer CM7's super-user is no longer needed.

I've noted that ST-Ericsson is developing an FM radio API for Android. Would be nice. I'm not convinced now that V4L is the way to go.

I've also noted my own government (in my own town) has apparently developed an FM app with RDS for Galaxy S (Google Nexus S?) and it's in the Marketplace. AFAICT, first and still the only real FM app in marketplace. I hope to be second by end of the month, unless someone beats me to it, LOL.

I've peeked at the app and it looks relatively basic, but RDS would definitely be nice. I may use the library in this app for my own app, as their licence allows.
[Legend General] TheLamma:
Sounds like some great features coming along.

Since when do governments in towns make radio apps for phones? Lol
[Legend General] mikereidis:
I meant the Canadian Federal gov't, which is in my area; the Ottawa/Gatineau region.

But that's what I thought; how dare they "compete" with me, with a free app, built with my tax dollars ? And they even hope to monetize it somehow (so they can support other phones etc.), so they aren't releasing the source... Usually, gov't tax funded software development should be open sourced, unless it's a security issue.

It's a communications research department, so it does make some sense. But I get the impression of the common gov't dept attempt to build an empire...
[Legend General] TheLamma:
That's my government too, man. Haha. Its country wide. ;]

I still find it weird that they would commission and Android radio app. O_o
[Legend General] mikereidis:
I'm tired of "sitting" on these new features, so despite the lack of formal QA, I'm going to release this as it is now.

https://docs.google.com/uc?id=0B7UP...Tg3NDctZWEyYzFjN2M0YTc4&export=download&hl=en

Or the containing page:

https://docs.google.com/leaf?id=0B7UP2cIqyQXGMjM1MThjMjYtOTdkNi00YjExLTg3NDctZWEyYzFjN2M0YTc4&hl=en

There are a bunch of known issues, I'll get to sooner or later:

- On later CM7's with the CM FM app, my app and the system volume control will fight a bit. So adjusting volume you'll hear loud followed by quieter.

- Portrait to/from Landscape always switches audio to earphone jack.

- The stock/Blayo btipsd_cli support can result in a crashed btipsd daemon requiring Bluetooth restart. But this usually only happens to me when power is cycled on/or too fast.

This support also provides seek functionality but the resulting frequency display is wrong.

The app tries to figure out out a way to access the BT chip. If hcitool works properly, hcitool mode is active, same for btipsd_cli.

There is experimental support for the more popular Broadcom FM etc chips, but only the 4 simple functions in the CM app: namely On, Off, Tune and Volume/mute.

Please post or PM any issues, or sucesses or if you just want to offer input into what I should prioritize.

I'm looking to buy an HTC Desire HD when the stores re-open so I can test/enhance the Broadcom support. Apparently Broadcom is even MORE closed than TI when it comes to info os these particular BT/WiFi/FM chips So I'll have more reverse-engineering ahead.
[Legend General] liamstears:
Just thought I would let you know I tried on DHD with no audio...
[Legend General] mikereidis:
OK, thanks for your report. Hopefully I'll get that fixed this week once I buy a DHD for development.

What ROM are you running ? I'm not sure it would work on anything but CyanogenMod at this time.
[Legend General] mikereidis:
Version 2.0.2:

https://docs.google.com/uc?id=0B7UP...Tk2YTMtNGM3ZmFjNjgyZjZl&export=download&hl=en

Relatively little that is noticeable has changed for TI based phones such as the HTC Legend, except that the UI has been somewhat redesigned, mostly to provide support for larger and smaller screens.

The app now supports tested Broadcom support on CM7. My new dev phone is an HTC Desire HD.

A pointer to my thread in a non-device specific forum where I'm hoping to aggregate further conversation about this app: http://xdaforums.com/showthread.php?p=13379669#post13379669
[Legend General] liamstears:
Well done on desire hd progress! Will you be making it work for sense roms?
[Legend General] mikereidis:
Thanks !

On my Legend I have it running on the Blayo ROM, which is sense, and I think it should run on a stock ROM, but haven't tested that.

On these ROMs there is no working hcitool, and I use btipsd_cli which seems to be on the stock ROM also. Sometimes the btipsd daemon will crash though, although most likely when stopping/restarting the app a lot.
[Legend General] joka90:
Found some sources from TI that may be useful, there are allot regarding Tx/Rx Radio.

omapzoom.org/?p=platform/hardware/ti/wpan.git;a=tree;hb=gingerbread

Can't post in your development thread as I haven't posted enough;)
[Legend General] mikereidis:
Thanks.

I have a thread here for low post counts: http://xdaforums.com/showthread.php?t=1166856&page=3

I've seen much of this before but there ARE some interesting updates/additions.
[Legend General] whitetigerdk:
Mike.. Did you ever get any money from the op of this thread?.. You made the radio work.. You deserve the money he offered.. ;) by the way.. Any reverse engineering will help get wifi ap driver to work on ogo2s 2.3 rom?
[Legend General] mikereidis:
That would seem fair and appropriate, and also for the others who joined in indicating they would contribute. I don't recall any dollar amounts though.

Before your post I PM'd the OP asking him if he would close this thread as it's served it's purpose. I will let him answer if he so desires.

I received 4 donations at the beginning of March, averaging around $20 each or so. I even received one around a month or so ago. Thank you donors !

But I have since removed the Donate button as I think it's incompatible with my commercial activity selling an Unlocker app for Spirit FM Radio.

Now I would prefer that people purchase my Unlocker: https://market.android.com/details?id=com.mikersmicros.fm_unlock

I've sold about 40 copies so far in the last 3-4 weeks.
[Legend General] mikereidis:
My hands are full so I won't be doing it.

Texas Instruments has been slowly becoming more open, with their source code at least. So perhaps some day...
[Legend General] and313:
Was in a mix of changing devices totally forgot about this thread back then. Take care.
[Legend General] mikereidis:
Thanks. :)

Please feel free to close this thread; it served it's purpose 4 years ago and there is probably nothing meaningful to say at this point, about FM on the now ancient HTC Legend.
[Legend General] and313:
Sure.

And good luck with android auto i saw you made some significant advancements :)
[Legend General] mikereidis:
:)

As OP Original Poster you should be able to close it yourself.

Just click on Thread Tools at the top and select Close.
[Legend General] meykii:
Fm radio
[Legend General] meykii:
Spirit 2
[G1 Q&A, Help & Troubleshooting] gsminhas:
I have used cynoxo sense rom but its not sooo gud.

Is there any other sense roms for g1?
[G1 Q&A, Help & Troubleshooting] rawfire:
MightyMax's v1.9.1 Cupcake Sense ROM ----- Fastest (as of my experience)

Z 'n' X's Eclair Sense ROM ----- Pretty good but little slow
[G1 Q&A, Help & Troubleshooting] gsminhas:
Okey thanks I'll give a try
[Galaxy S I9000 Q&A, Help & Troubleshooting] ganymede77:
In my car my SGS (running Froyo 2.2.1) is paired with a bluetooth device (LiquidAux).

The problem is that when i'm on a call, the other person can't hear me due to the location of this device.

Does anyone know how to enable the SGS mic while the bluetooth is paired?
[Galaxy S I9000 Q&A, Help & Troubleshooting] mickey555:
I'm dying to hear the solution for this too. Using also LiquidAux but with HTC Desire and having the same problem.
[Galaxy S I9000 Q&A, Help & Troubleshooting] ganymede77:
nobody knows?
[Touch HD Themes and Apps] namklis:
Anyone know of an app for the upcoming cricket world cup for winmo. I could only come across one for android:

http://xdaforums.com/showthread.php?t=928385
[HD2 General] denyboy:
Let me explain my question.

HD2 is most popular phone for developers. We have Android, WindowsM , WP7 , Ubuntu,...etc.

My question is what phone is going to replace HD2 and will be focus for all developers in next years.

I will keep my HD2. I want in future to buy a new phone which will support multiple OSes like HD2, but have better multitouch, screen, speaker,...etc.

So what phone do you think is the next "HD2" ???
[HD2 General] arkatis:
That's a really nice question mate! A bit difficult for me to say though! HD2 is by far the best phone ever made and developers gave to much effort for us to have all those Operating systems running extremely fast and stable. Although as i said it's a bit difficult to say which device will take place! I just got my HD7 and sold my HD2 because WP7 is really my OS! Simply, fast, stable and something new! So i don't think so that HD7 will be a developers phone or any other device currently available! HD2 will be in history until something new will come in the future! Now who is the next King?? UKNOWN!
[HD2 General] tictac0566:
I am quite sure that the device which will be the "dev-fav" successor of HD2 is not yet existing. However, the next generation will bring even more power, maybe there will be a few candidates on the market soon...
[HD2 General] THUDUK:
Probably due to the fact the HD2 is the only Windows based 1Ghz model, not sure any other native device from Android, Windows Phone 7 etc...could be hacked so well as the windows mobile base, if they bought out another windows mobile phone with dual cores etc...
[HD2 General] tfouto:
easy answer, its the next phone cotulla buys. So only you have to be aware its when cotulla buys a new phone and which.
[HD2 General] zarathustrax:
I don't know if there ever will be another phone that gets as hacked as the HD2 did. The HD2 was in a unique position where it got all the ports it did... also it being pretty much the first and last winmo phone with snapdragon, and there wasn't any competition of other winmo phones in it's league, it attracted a lot of devs. With any new android or wp7 phone, there is such a variety of choices and similar devices, that the devs won't all get the same device... they will be more spread out between the variety of similar devices, so porting won't be accomplished as quick as the hd2 ports did. Also, I think winmo devices were much easier to port other os's to than android or wp7 devices. I think the next device that comes closest to the versatility and choice the hd2 had will probably be a nokia meego device or something like that.