yashsingh1/xdaforums huggingface dataset:
[Windows Mobile Software Development] Floris-k:
@ flywhc

I kinda screwed up atm.. had to do a hard reset and installed the FM radio, HyperGPS, Power Radio etc.

At the moment I can't activate HyperGPS and Power Radio says it failed to open the Radio hardware.

I'll first have to fix this and then I'll come back at ya with the to get the GFMAPI working.
[Windows Mobile Software Development] flywhc:
xFMRadio is lower level application that directly talk to FMS driver. Please try that first, after installing HTC FM Radio.

The debugging version of xFMRadio:

http://xdaforums.com/attachment.php?attachmentid=192517&d=1244155104
[Windows Mobile Software Development] Floris-k:
It says: Failed to init FM radio

*sigh* why did I have to screw my phone up lol.

Did 3 hard resets already.. Will be going on.

Power Radio, HyperGPS and xfmradio all 3 not working at the moment

HTC FM Radio is working perfect
[Windows Mobile Software Development] ubeulr:
Hi

I have a similar problem here.

Using a HTC Touch Pro 2. First I installed:

HTC FM Radio

HyperGPS Beta 6

Power Radio

.NET Framework 3.5

XMFRadio (in that order)

My Status now is, that :

HTC FM Radio - works fine with RDS

Hyper GPS Beta 6 - only shows a send message ($PSRF123,1,1*27 or $PSRF121,1*38) when autotuning, but never a Recieve (also when i enter e frequency of a TMC capable Radio Station manualy)

Power Radio - "Failed to init. FM Radio"

xFM Radio - "Failed to init. FM Radio"

What am I doing wrong? Is there anything that I can try? Or support you with informations to maybe troubleshot that problem?

Thanky very much

Ulrich
[Windows Mobile Software Development] terta:
Rhodium

@flywhc:

I get the same errors both for APItest & XFMradio on my TouchPro2, even with v15B of GFMAPI

I noted that Rhodium has an other version of FMS.dll in the win directory than what was posted on the 1st page (and there's no FMS_API.DLL on the whole device).

The "ported" HTC FM radio works fine.

One more thing: I remember you wrote once that the FM radio is part of BT chip. Now for some reason only HTC knows, the Rhodium seems to have a totally different BT system than eg. Raphael had! Instead of the MS BT stack, now Widcomm is used, and it may well be that also another BT chip...

Attaching for you the FMS.dll from my Rhodium, maybe it helps...
[Windows Mobile Software Development] flywhc:
This is really weird. FM Radio uses different driver so shouldn't be impacted by BT stack.

/*delete*/ Can you also post FMS_API.DLL please?

Update: I just found there isn't FMS_API.DLL in Rhodium! It has been renamed to FMSDKWrapper.dll!

The attachment is the Version 1.6

It should:

- Improve power consumption when no event subscription.

- solve mute problem on Topaz

- support Rhodium - partially. cannot receive RDS data

I assume Rhodium has same mute way as Topaz. Hope mute function is working on Rhodium.
[Windows Mobile Software Development] terta:
Yesss :)

wow,

- copied your new version to my Rhodium,

- copied FMSDSKWrapper.dll to the same dir and renamed to FMS_API.dll

--> and it worx!!!

I mean, both APItest and XFMradio are working (even Mute)!

Good job ;)

@6Fg8:

PowerRadio has some problems:

- have copied the new DLLs to the PowerRadio folder so they can be accessed

- it starts, and seems to do the initial seek, also finds some stations, but no sound comes (not from speaker and not in the headset). volume setting keys seem to work (at least the volume bar on the right moves).

when you try to seek for a new channel, seek stays endless.

fieldstrength indicator is on zero (headset connected and I have stations with XFMradio).

when you power PRadio off, it seems to exit, but the standard WinCE error screen pops up _twice_ (there has been an error with PowerRadio.exe, and I could send a riport to Microsoft), and funnily as I click on upper right corner to see if anything is running, the font displaying memory usage % is set to PRadio's font :)

I attach for you my FMSDSKWrapper.dll

UPDATE:

now that PRadio has exited, APItest says: "failed to init FM session", and HTC FM radio says "unexpected error" - so someone is still occupying the radio. advanced task manager does not show a background process, so I'll do a reset...

Reset done,

- HTC FM works

- APItest works

- PRadio also works, but cannot extract RDS info from a station which I know transmits it for sure (HTC FM also shows it).

UPDATE#2:

- PRadio exits still with the "application error" screen, and - even leaves the radio on! and of course, after that none of the apps can address the radio again.
[Windows Mobile Software Development] Arrak1s:
TP2 support closer

duplicate submission..
[Windows Mobile Software Development] Arrak1s:
TP2 support closer

I copied the 1.6 files to the windows directory

I copied FMSDKWrapper.dll to FMS_API.dll

IGO now also finds a TMC device but it seems to stick to 90Mhz freq, and it does not find anny TMC info

Now when i do the "test" mode i see messages but NO group 8 tmc related messages.

Regardless if i press ">" or ">|"

I oly get output in the form of:

$RTTMC,7,0000,7000,0000,0000*40

$RTRDS,90,0,0,3,2,1,1,1,000,255,5,0,51*57

This keeps repeating, the continuous $RTRDS,90.. makes me believe scanning is stuck at 90Mhz

So for the Touch Pro 2 it is getting closer but its not there yet..
[Windows Mobile Software Development] terta:
so, I made another test with PRadio 1.2 - the situation is somehow better, at least the scanning works, and I have stations, but still, no RDS info is extracted at all (I have full fieldstrength) and upon exit, the app crashes and leaves radio on. and Mute does not work from PRadio (it works fine in XFM).
[Windows Mobile Software Development] flywhc:
The GFMAPI 1.6 tries to load FMSDKWrapper.dll so shouldn't need to rename it or copy it to other folder. Maybe it is a bug in GFMAPI if you have to do that.

APITest is the tool to verify GFMAPI. Its UI is ugly but can isolate the problem.

Can you tell me the test result by using APITest?

You should be able to see a increasing number after RDS on APITEST if there is RDS signal.

xFMRadio is lower level implementation that doesn't use GFMAPI.

Can you see RDS data from xFMRadio?

As I posted in the TMC thread, it won't work. We need to get it work with APItest first and then integrate with hyperGPS.
[Windows Mobile Software Development] bmnaccounts:
Can't see TMC info on my HTC Touch Pro 2

Hello again, i've tested new gfmapi.dll v1.6 with NEWEST

FMS_API.dll (FMSDKWrapper.dll) in win dir!!

Api test from gfmapi.dll SUXESSFULLY work!!!!!!!!!!!!!!!!!!

It can seek forward and backward and can find stations!!!!!!!!!!!

BUT in test mode of HyperGPS i receive only

$RTRDS,90.0,3,1,1,.... and

$RTTMC,7,0000,7000,...

These lines are repeated long time..

AND in the upper line there is a 90.0 only ..

So i guess the frequency is hanging at 90.0,

my first stations with TMC is 90.6 !!!

AND HTC Radio is loading long time after loaded HyperGPS (HyperGPS_WM6_B6), when i unload HyperGPS, HTC Radio still can't play and doesn't exit when i press exit key!

So only seeking in test mode in HyperGPS seems not to work clear and Radio isn't working after load and unload HyperGPS ! !!

Here ends my info...:cool:
[Windows Mobile Software Development] terta:
@flywhc:

- APItest is still looking for FMS_API if I do not rename FMSDKWrapper

- I set Frequency to 94800 (we have a local radio transmitting RDS and even TMC on 94,8 MHz)

- there's no any number after RDS :( ( I can hear the music fine)

- at poweron, when mute is set for the 2nd time, "status: failed" comes back.

what props should I try to set / read back to support you?
[Windows Mobile Software Development] terta:
xFM shows also no RDS, but Mute works fine!
[Windows Mobile Software Development] flywhc:
On the first page of this thread you can find fms driver for Blackstone.

Copy fms_api.dll to the same folder of APITest and have a try.

if not working, copy FMS.DLL to windows folder and have a try. (this file should be digital signed and you are overwriting a file in ROM so it may not work)

The problem become complicated if cannot receive RDS data. I have to do more research.

I don't understand why HTC change the API for no benifits. I guess HTC is trying to stop us using their FMS API.
[Windows Mobile Software Development] bmnaccounts:
Power Radio don't show info (RDS,TMC)

Hello, Power Radio only plays music at all and when i close it radio is still on!!

xFM Radio works but also no RDS and TMC!!

Help!!

:confused::confused:
[Windows Mobile Software Development] terta:
:( after I changed back the fms_api.dll (which was renamed from fmsdkwrapper) to the one from Blackstone, APItest says: "failed to init FM radio"
[Windows Mobile Software Development] Floris-k:
Ok I'm back after a hard reset :P

I managed to get working:

HyperGPS

PowerRadio

XFMRadio

HTC Radio

All working prettyg good, but none of them show RDS/TMC information.

I have tried both the original FMS dll's as the ones on the first page. No difference between both as far as I noticed.
[Windows Mobile Software Development] flywhc:
Can you see name of station on HTC FM Radio?
[Windows Mobile Software Development] terta:
yes, HTC FM shows the station names correctly via RDS!
[Windows Mobile Software Development] flywhc:
from disassembled code I think HTC rewrote that FM driver although interface is similar.

It is very difficult to get RDS working on TP2 for me because I don't have that device. I can only guess the solution and hope we have good luck.

Please try:

1. Attached old filer xFMRadio uses different function to get PS and RT.

Can it display PS and RT?

2. The debug version of xFMRadio (the link below) has a menu "RDS"

Tune to a channel you know it has strong RDS signal.

enter a number such as 0, 1, 2... on the box and select RDS menu.

Can you see RDS data received?

http://xdaforums.com/attachment.php?attachmentid=192517&d=1244155104
[Windows Mobile Software Development] bmnaccounts:
I have Rhodium Touch Pro 2!

Installed newest FMSDKWrapper.dll renamend to FMS_API.dll!

And installed GFMAPI.dll v15B !!

xFMRadio opens,then i seek for stations ..

first station it finds display rds station name!!

second station it also displays RDS name,

SOMETIMES then when i want to seek,

it can't seek anymore .. it stays at same station!! ????? :confused:

Usually i can seek any station and it finds RDS NAME !!

--> Now i installed newest GFMAPI.dll v1.6 !!

Then i can seek ány station and xFMRadio find the RDS station name clearly

again and again and it always works like a charm!!

IT must be working like

this

!! :D:D

-- Thats enough i think you must know to make a stable version!! --

Hope you guys can make Power Radio even as good as xRadio in version 0.2!

:):):)
[Windows Mobile Software Development] flywhc:
That is not a good news - xFMRadio 0.2 capture the PS and RT events.

It seems that raw RDS event is not delivered by TP2 :(
[Windows Mobile Software Development] terta:
@flywhc:

here's my feeback on my TP2:

- used GFMAPI 1.6, new FMS, renamed Wrapper

- old FMradio0.2 shows station name in the arriving messages

- with the debug version I tried setting RDS from 0 .. 12, nothing happens, I always get SetRDS(n)=0. shall I try some higher numbers? and what shall I try to set for SetRdsRbds? I tried a few numbers and always get back SetRdsRbds(n)=3

if you write some version which could do tracing or examination I'm ready to support you with making various tests :)
[Windows Mobile Software Development] ubeulr:
Hello

I also have the TP2.

I'd be happy to help you in any way i can. Just let me know which test i should run.

Hope i can help you in getting the app to work.

Greetings

Ulrich
[Windows Mobile Software Development] flywhc:
I compared assembly code of TP2 FMS.dll with TP FMS.DLL, they are very similar at RDS group process function. I guess HTC added a condition that filter raw event. It is difficult to find where the condition is.

Please help me do another test:

In xFMRadio 0.2, enter 4 in the top left text box, then select menu->verbose.

On TP it displays raw RDS data in hex-binary format.

At least it should display an error message "Invalid event type: "... to indicate unexpected events.

If you cannot see those logs, unfortunately we cannot make TP2 support RDS in short time.

A possible solution is making a ROM that with Touch HD version of FMS.dll and fms_dll, including FM*.bts files. they should be digital signed and maybe do some registry tweaks. Maybe a CAB file can do but I am not expert of making ROM, replacing driver etc. Maybe need to modify some code if TP2 has different physical address for bluetooth/FM chip.

The worst case will be we have to rewrite FMS driver. I am not able to do that. :(

I would recommend friend not to buy touch pro 2. :(
[Windows Mobile Software Development] terta:
one more hint: I guess the change behind the APIs and DLLs is really bundled together with the change of the BT+FM chip itself. in previous products it was from Texas Instruments, now for the Rhodium it is from Broadcomm. probably they supplied another API library for it.

however, the broadcomm chips also fully support RDS as it can be seen from their product briefs:

http://www.broadcom.com/products/Bl...licon-and-Software-Solutions#tab=products-tab
[Windows Mobile Software Development] terta:
that's sad.

after setting to Verbose = all, still no messages appear (but I know that this station transmits even TMC data)

I'm a bit afraid that having the Touch HD .dlls will not help us if the FM chip is another brand. it's not the physical address, but the different protocol!

UPDATE: I tried it also with the FMS.DLL from Blackstone - that does not help either.
[Windows Mobile Software Development] bmnaccounts:
I have Rhodium Touch Pro 2!

Installed newest FMSDKWrapper.dll renamend to FMS_API.dll!

I installed newest GFMAPI.dll v1.6 !!

I have entered 4 in the top left text box, and selected menu->verbose.

my log shows station name, but no RDS "Invalid event type: "

It looks like:

Then it shows constanly:

Preset String Changed: frequency 90600,

string'WDR 5 '.

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

I know this station (WDR 5) sends TMC data, too!!

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

I don't know, maybe

THIS

help you..

under frequency there is

I hope You man can do it at all FINE

and find the problem.;);)

here ends my info.. :)
[Windows Mobile Software Development] terta:
radio app found!!

well, I did some research in the Windows folder, and found some things:

- there's a skin by default for an FM radio app (which is NOT the standard HTC radio), see attached. the skin has "Broadcom" on it!

- there's another related dll called "FmRadioSdk.dll", see also attached!

- there are also two files FM_on_2_0.bts and FM_on_2_1.bts, also attached

- now catch this: there's even an FM radio app!!!!!!! :eek: so HTC did not forget it from the ROM, just it was not put under programs because it seem to be quite buggy, as I don't hear anything on it, although it shows the RDS logo, scans, and finds RDS program info (it displays more than the old HTC radio, as it also shows the ongoing music titles). attached...
[Windows Mobile Software Development] flywhc:
Unfortunately all results show that Rhodium FMS driver doesn't send raw RDS data to the application. In other word, it can't provide full RDS information such as TMC etc.

How did you know Rhodium uses broadcom not TI chip?

From assemble code of FMS.dll I feel the way to handle FM data is almost same to Raphael -- I haven't found big differences yet.

Even it also uses *.bts files to initialize bluetooth chip.

To contrast, Artemis has completely different way to handle FM radio. It uses a Si4701 chip just for FM radio.

I remember that directly overwriting a driver on the ROM will be not working.

Also bts files are important to initialize bluetooth hardware. It is worth to try those files.

If it is truly Rhodium uses completely different solution, this will be very difficult for me to find the solution. Like Artemis, I have spent a lot of time on it but still no progress because I don't have such device, and driver isn't friendly to developers. It would be easier for someone with this device and know C++ and ARM assembly language.

I looked at files you uploaded. Hope HTC provided another easy to receive raw RDS data like other devices.

FmRadioSdk.dll is a new driver that provide different interface from fms.dll. It has different way to handle RDS.

BTFM.exe has all debugging information. I can even see all function names but it doesn't call RDS functions. That means I cannot easily get function definitions of that SDK. :(

Maybe, it is a demo for Broadcom BCM2048/BCM4325 chip?

I hope I can have document for it.
[Windows Mobile Software Development] ubeulr:
Hi

I also did some tests. Here is what i did:

1) Copied the 1.6 GFMAPI.DLL to the windows directory

2) Made a copy of the original FMSDKWrapper.dll in the windows directory and renamed it to FMS_API.dll

3) Run XFMRadio0.2.exe

4) Typed 4 in the box in the upper left corner and under menu i choose Verbose level. The answer was Set verbose to all

5) Tuned in to a station of which i'm sure that there is tmc data. The output was the following: Present String Changed: frequency 105800, string 'xxx'. In the String i got the Station Name and Song Title.

6) In the upper left box i then enterd a nummer between 1-12 and in the menu i choose RDS. The output is: Run SetRDS(x)=0 x being the number which i enterd in the upper left box. And afterwards it continuous with the "Present..." messages

Things i noticed:

-After setting the number for RDS for a few times i can't change the frequency anymore

-Only once i got a "successful......" message after setting the RDS number. All the other times it just continued with the "Presnet...." messages. It was when i set the number to 9. Shouldn’t there always be a "successful..." message?

Hope this helps a bit

Ulrich
[Windows Mobile Software Development] terta:
broadcom FM

@flywhc:

I had initially some problems with my stereo BT headset which was working pretty fine with the Raphael - so I had to investigate this question and soon it turned out that HTC has now the Broadcom BT stack - and of course also the Broadcom BT chip inside.

the BTFM.exe does use RDS: it displays the radios station genre (like "Classic") and also displays the artist + title information of the current music running on.

I did some googling for documentation, but was not lucky... you can download the BT SDK from Broadcom, but that only includes BT routines, nothing about FM radio.

I noticed that the same radio app is built into some LG phones - maybe we should look around on http://www.lg-incite.com/

and, sorrily, I don't know C++ and ARM ASM, I'm more a HW guy :p
[Windows Mobile Software Development] flywhc:
terta, you are right. Rhodium should use Broadcom chip - although we don't know model, no documents, from driver log I can see that name.

FMSDKWrapper.dll is a wrapper of FmRadioSDK.dll. It doesn't use FMS.DLL at all. This driver provides a FMS driver interface but internally just call FMRadioSDK.dll.

That FMRadio.exe is not good one to tell me how to use this new API but FMSDKWrapper does tell me the usage ( in ARM assembly of course).

I have to spend some time to write a new GFMAPI for Rhodium.

It will be nice to have a VC++ developer who has a Rhodium to help me test and debug the new API.
[Windows Mobile Software Development] bmnaccounts:
I will test new gfmapi, when you release

NEW

one!!

I will be happy and very satisfight when it will be so far! :):):)

AND i will be lucky,then

I WISH YOU VERY GOOD LUCK!

so power radio and xFMRadio will work then, too, right??

And HyperGPS will also work on RHODIUM??
[Windows Mobile Software Development] flywhc:
I have discovered most function and some of events handling.

It has a simple set of functions even can't change volume and audio path - all have to use WAV1: device IO.

The events handling way is complicated.

I really need someone has VC++ and Rhodium to help me analyze data given by the even callback function, or I can't make progress.

Please send me private message with your email address if you are the one.
[Windows Mobile Software Development] bmnaccounts:
VC++ ??

What do i have to do with VC++??

Do i need a special program?? Can you explain what i've to do with VC++?

I can't speak this language! And write also not! :confused:

greets
[Windows Mobile Software Development] ubeulr:
hi

If you can tell me where i can find a free version of vc++ and how i have to test i will gladly help you.

I'm no programming expert, the only thing i've done is some MS VBA and Perl, but if there's any way i can help you please let me know.

ulrich
[Windows Mobile Software Development] 6Fg8:
Visual Studio Express is free:

http://www.microsoft.com/express/vc/
[Windows Mobile Software Development] flywhc:
Plus Windows Mobile 6 SDK.

Of course the one should also know how to write and debug windows mobile application.

I discovered the first event of the Rhodium FM driver is RDS event. all existing code only handle PS, RT, PTN, PTY. I don't know if the driver can provide raw RDS. However the parameter is a more than 248 bytes structure, at least 62 variables. It is possible that one of it point to a raw RDS buffer. Also I don't know what other a few types of event are. He (not me) has to guess from binary data without any documents.
[Windows Mobile Software Development] 6Fg8:
OMG what a challenge :eek:
[Windows Mobile Software Development] flywhc:
That I have done for Raphael.

There is a way to guess: PI should be recursive in raw RDS block. we can search for PI in memory.
[Windows Mobile Software Development] ubeulr:
hi

I downloaded and installed the Visual C++ Express Edition, but there is a Problem with the Mobile SDK (Link):

System Requirements

....

Microsoft Visual Studio 2005, Standard Edition or above (Express Editions are not supported). SP1 and SP1 Update for Windows Vista required

....

Maybe it would be a solution to make a programm which outputs all the answers to variables to a textfile? I could run it and send you the output?

Ulrich
[Windows Mobile Software Development] 2'NixorNot2'Nix:
flywhc

Which part of London are you based in roughly?

What phones do you have access to for you development work?

Regards
[Windows Mobile Software Development] flywhc:
I live in Wimbledon and office close to Waterloo.

I only have a HTC Raphael. I am trying to make driver for HTC Artemis and Rhodium but I don't have those devices.
[Windows Mobile Software Development] 2'NixorNot2'Nix:
The Rhodium is the same as the Blackstone isn't it?
[Windows Mobile Software Development] flywhc:
Obviously not. Please check wiki: http://wiki.xda-developers.com/

Blackstone is fully supported by GFMAPI (as well as hyperTMC, powerRadio etc).
[Windows Mobile Software Development] 2'NixorNot2'Nix:
TMC Data now working correctly and data appearing on IGO8 map with the new V7 of Beemer's utility.

Two screencaps added showing Live data in Central London at 13:05 Today.
[Windows Mobile Software Development] terta:
hi 2'NixorNot2'Nix,

which device are you using?
[Windows Mobile Software Development] 2'NixorNot2'Nix:
Touch HD (Blackstone)
[Windows Mobile Software Development] terta:
ah, OK, that still has the old FM chip.
[Windows Mobile Software Development] bmnaccounts:
When is new GFMAPI for Rhodium out??

@ flywhc:

How far are you NOW with developing

NEW GFMAPI wich support Rhodium with RDS decoding??

How many time does it take to do??

I'd like to test NEW gfmapi!!:p

I need it till 01.08. causse i'm driving long way away!! :D:D

Will you beat the limit?? :confused:

THERE'S NO-LIMIT FOR YOU!!

greets
[Windows Mobile Software Development] moraveka:
HyperGPS not showing TMC data on HTC Pro2

Hello,

I have HTC Pro2, have enabled the FM Radio (working well), installed HyperGPS b7, tried also b5. The device is showing GPS data well, but no TMC messages appear (have tried also running FM Radio on backround on a radio station broadcasting TMC data (94.6 CRo1 in Prague, Czech Republic).

Am I doing something wrong or HTC Pro2 is not yet supported and no way till now to receive TMC for any navigation software ?

Please help, thanx

Ales