[APP][17FEB10]RDS FM Radio R&D: Get radio text, Alt Freqency, free TMC etc

Search This thread

WhatBackHand

Senior Member
Oct 8, 2007
61
2
Bristol
Just Dump the Official ROM using Ervius's Visual Kitchen, it will take a while to find all the files.
Search for FM*.* in All Files (include hidden and system) and BT*.*

Dave

@anyone,
can you point me at guide/manual or similar on how to extract/dump using Ervius Kitchen? I've done some searching and found some threads but cannot make any sense of them. This could be because I've never gone down the route of cooking so please be gentle!


Chris
 

DaveShaw

Senior Moderator Emeritus
Dec 4, 2007
8,772
522
Huddersfield
www.taeguk.co.uk
@anyone,
can you point me at guide/manual or similar on how to extract/dump using Ervius Kitchen? I've done some searching and found some threads but cannot make any sense of them. This could be because I've never gone down the route of cooking so please be gentle!


Chris

Download the Kitchen.
Click on the Dump button on the left hand side (near the bottom). And point it at the NBH file.

All the files should be extracted into folders.

Ta
Dave
 

Thunichgud

Member
Nov 2, 2009
30
0
Moin,

I've dumped the ROM of the Glofiish V900, which is nearly identical to the ROM of the Glofiish X900. The radios are absolut identical.
In the attachments you will find all files, which begins with FM*.* and with BT*.*.
Hope it will help you.

- Thunichgud -
 

Attachments

  • V900_X900_FM-Files.zip
    640.2 KB · Views: 40
  • V900_X900_BT_Files.zip
    394.5 KB · Views: 14

flywhc

Retired Recognized Developer
Jan 6, 2005
354
0
London, UK
Moin,

I've dumped the ROM of the Glofiish V900, which is nearly identical to the ROM of the Glofiish X900. The radios are absolut identical.
In the attachments you will find all files, which begins with FM*.* and with BT*.*.
Hope it will help you.

- Thunichgud -

Thanks
FM radio function on this phone is not related to bluetooth.
Can you check that HKLM\Drivers\builtIn\FM?? registry? is that fm_si4700.dll?

Do you have audio path problem when switching between loud speaker and headset?


For that scan channel problem, I need log from EtenTest in same zip file. turn off RDS, try SeekFore and SeekBack. check logs when it reaches limit.
 

nitrate

Senior Member
Dec 24, 2008
179
21
Goerlitz
@flywhc (HD2):

I don't know if this can help you, but did you check the Widcomm BTW-CE SDK?

According to a short explanation of the package it includes a documentation of API descriptions, Interface test programs, design, sample application code and a troubleshooting guide.

I got it downloaded and it has these 3 PDF's included:

- Programmer's Guide (1000-WCE-PG100-RCD.pdf)
- Sample Applications (1000-WCE-UM300-RCD.pdf)
- Smartphone Sample Application User’s Manual (1000-WCE-UM400-RCD.pdf)
 
Last edited:

flywhc

Retired Recognized Developer
Jan 6, 2005
354
0
London, UK
@flywhc (HD2):

I don't know if this can help you, but did you check the Widcomm BTW-CE SDK?

somebody in this thread said he did and couldn't find FM Radio related topic.
BT SDK only has bluetooth stuff. FM radio is undocumented. From disassembled code I can see Widcomm FM SDK doesn't provide raw RDS interface to HTC phones.
 

WhatBackHand

Senior Member
Oct 8, 2007
61
2
Bristol
@flywhc,
here are the FM*.* files, for some reason the BT zip doesn;t upload, even though it's only 2.5MB. I'll try and upload the BT files later.

I hope I did (the process) right and they help? Let me know if I can assist with anything else.


Chris
 

Attachments

  • MEGA-FM.zip
    409 KB · Views: 27

boiacchi

Member
Jul 3, 2009
43
0
Rome
This version has almost full feature: supports seek/tune events and RDS events. all properties are supported except FMPROP_AFJUMP, FMPROP_DEEMPHASIS and FMPROP_CARRIER_DETECT. AFJUMP and Deemphasis are not supported by hardware. Carrier detect will be implemented later.

I added a menu for RDS log on/off.
Please provide RDS log for one minute under strong signal.
And tell me what is the name of that station.
For example, in the built-in FM radio displays "BBC R4", I shall be able to find ASCII code of "BB", "C " and "R4" from RDS log. Otherwise there might be a bug.


It is time to make it working perfect. I will write more test plan tomorrow.


Reference:
Code:
    FMPROP_AFJUMP			= 0,	// enable (dwVal = 1)/disable (dwVal=0) automatically AF jump when RSSI is lower than FMSET_MIN_SEEK_RSSI.
    FMPROP_AUDIOPATH		,		// Set audio path: 0: loud speaker; 1: wired headset;
    FMPROP_BAND				,		// Set Radio Band. See enum FMRadioBand.
	FMPROP_DEEMPHASIS		,		// De-emphasis mode. 0 = off; 1= on
	FMPROP_FREQUENCY		,		// current frequency
    FMPROP_MIN_SEEK_RSSI	,		// the minimum signal strength required for seeking a channel. 0-255 devce dependant.
	FMPROP_MONO				,		// mono mode. 0 = stereo; 1 = mono
	FMPROP_MUTE				,		// set mute state: 0 = Unmute; 1 = Mute
	FMPROP_RSSI				,		// radio signal strength. 0 - 255. Read Only
    FMPROP_STEREOBLEND		,		// enable (dwVal = 1)/disable (dwVal=0) stereo blend for improving sound quality when signal is poor
	FMPROP_VOLUME			,		// set FM audio volume in percentage. 0 - 100
    FMPROP_CARRIER_DETECT   ,       // bitmasked carrier detection for current frequency: 0x0001 FM, 0x0002: Stereo, 0x0004: RDS. Read Only
	FMPROP_POWER			,		// current power state. 0 = power off; 1 = power on. Read Only

Hi Flywhc
sorry for my delay... i'm allways late!:)
By the way i'm trying the latest version of your program, but it is difficult to me to set the radio station i want cause of the different frequency displayed.
I'm looking for a station called RDS tuned at 102.5 in italy, but i cannot understand how to set it.

Ah... with seek back i get minimum station of 92700 and with seekfore i get 119900.
But sometimes i got also 90900... not everytime.

By the way the rds count is rising fast with every station!

Please tell me how i could tune at a specific radio station, and i will attach the rds log for you.
I know you have already explained it, but i did not get it... i'm sorry it is all quite odd and complicated to me :(

Have a good week end!
 
Last edited:

flywhc

Retired Recognized Developer
Jan 6, 2005
354
0
London, UK
Can you SetProp FMPROP_FREQUENCY with 102500? 102500 KHz is 102.5Mhz

FMPROP_MIN_SEEK_RSSI should be set to 0 or 1 to find all possible channels.

Can you receive any channel lower than 92700 by using a real Radio?
119900 is not a valid value. please provide logs.


can you try this old version, which audiopath can be 0 to 5. maybe one of value can solve switching audio between headset and loud speaker problem.
 

Thunichgud

Member
Nov 2, 2009
30
0
Thanks
FM radio function on this phone is not related to bluetooth.
Can you check that HKLM\Drivers\builtIn\FM?? registry? is that fm_si4700.dll?

Do you have audio path problem when switching between loud speaker and headset?

Moin,

1. Here is the registry entry:
HKLM\Drivers\BuiltIn\FM_DRIVER\DLL: fm_si4700.dll.
2. No, it switches automatically, when I insert the cable headset and when I remove it. I havn't seen any way to switch manually.
3. I did forget: There was a patch for the Glofiish V900 / X900 FM Tuner: It enabled the receiving of simple RDS data with the radio and the receiving of TMC data with GPS Navi Apps. You will find it as attachment.
When installed, the FM Tuner app shows the actual RDS channel info in a ticker line. But very slow (up to 30 seconds until the info comes the first time) and often incomplete, when the info is to long.

- Thunichgud -
 

Attachments

  • FM_PATCH_V900_150509.CAB
    45.5 KB · Views: 32
Last edited:

boiacchi

Member
Jul 3, 2009
43
0
Rome
Can you SetProp FMPROP_FREQUENCY with 102500? 102500 KHz is 102.5Mhz

FMPROP_MIN_SEEK_RSSI should be set to 0 or 1 to find all possible channels.

Can you receive any channel lower than 92700 by using a real Radio?
119900 is not a valid value. please provide logs.


can you try this old version, which audiopath can be 0 to 5. maybe one of value can solve switching audio between headset and loud speaker problem.

i didn't realize it was so obvious... i'm really sorry.:(
ok i'm trying the version you linked:
i'm attaching a log file after having set:
-Frequency 103000 RDS Italy (i was wrong... it was not 102.5)
-Audiopath 2
-Volume 10
-Min sek rssi 0

i can confirm that the lowest frequency i can receive with the m900 radio software is 87.5MHz
 

Attachments

  • fmradiolog.zip
    21.7 KB · Views: 10

boiacchi

Member
Jul 3, 2009
43
0
Rome
latest version log

please find attached a log from the latest version, using the same properties as above.
You shoul find RDS as station name.
I confirm the different bahaviour of audiopath property.

Hope it was userful.

bye.:)
 

boiacchi

Member
Jul 3, 2009
43
0
Rome
Moin,

1. Here is the registry entry:
HKLM\Drivers\BuiltIn\FM_DRIVER\DLL: fm_si4700.dll.
2. No, it switches automatically, when I insert the cable headset and when I remove it. I havn't seen any way to switch manually.
3. I did forget: There was a patch for the Glofiish V900 / X900 FM Tuner: It enabled the receiving of simple RDS data with the radio and the receiving of TMC data with GPS Navi Apps. You will find it as attachment.
When installed, the FM Tuner app shows the actual RDS channel info in a ticker line. But very slow (up to 30 seconds until the info comes the first time) and often incomplete, when the info is to long.

- Thunichgud -

could this patch works on m900 :rolleyes:?? :D
 

flywhc

Retired Recognized Developer
Jan 6, 2005
354
0
London, UK
Thunichgud, thanks, seems V900 is better than M900 when handling audio path. Having that patch, do you guys still need GFMAPI driver for m800/m900? :)

The cab file contains a good fm_s4700.dll, which is 22KB. Old one was only 9KB.



Does anyone still have audio path problem? such as SetProp FMPROP_AUDIOPATH to 0 and set to 1 and set it back to 0


SetProp FMPROP_BAND to 1 or 2, can you set frequency to 76000? It is FM band for Japan but can listen to police radio in some countries. can you also set it to 107000 on these band?
please attach logs.


I don't need RDS log because I know it works. can you turn it off by click on menu->RDS off?
 

boiacchi

Member
Jul 3, 2009
43
0
Rome
Thunichgud, thanks, seems V900 is better than M900 when handling audio path. Having that patch, do you guys still need GFMAPI driver for m800/m900? :)

The cab file contains a good fm_s4700.dll, which is 22KB. Old one was only 9KB.



Does anyone still have audio path problem? such as SetProp FMPROP_AUDIOPATH to 0 and set to 1 and set it back to 0


SetProp FMPROP_BAND to 1 or 2, can you set frequency to 76000? It is FM band for Japan but can listen to police radio in some countries. can you also set it to 107000 on these band?
please attach logs.


I don't need RDS log because I know it works. can you turn it off by click on menu->RDS off?

Unfortunately that patch doesn't work on M900:mad: i've tried it right now.

Putting Band to 2 i can tune to 76000 Hz but hear nothing than noise.
 

Attachments

  • fmradiolog.txt
    3.6 KB · Views: 5

phjz

Member
Nov 17, 2009
46
20
Veszprem
phj.hu
i8000

Dear flywhc, I wrote the above on the TMC thread and redirected to here for more info, can you help me?
"I'm just finished a Samsung I8000 application which can use near all the radio chip (Si 4709) features and collect all the TMC messages using its native fmradio.dll (see at : phj.hu/i8000/TMC. Can anybody help me here how to use the HyperGPS? Excuse me, but I'm simple tired to collect the information. I know about the FMRadioapi c and h , but there is a lower level implementation also in public?"​
 

flywhc

Retired Recognized Developer
Jan 6, 2005
354
0
London, UK
phjz, it is great to see FM radio can be programmed on Omnia II.

The first post of this thread has existing GFMAPI for HTC (BRF6350 chipset) and eten/acer device (si4700 chipset).

In any of them you can find a file fmapi.h. It defines the API to be implemented.

I realized that it was not a easy to implement all functions in the API, especially RDS/status events for other developers. So I am writing an "Adaption kit" for developers to minimize efforts to implement this API.

It would also help BeamRider to implement the API for Omnia.


For the time being, you can start implementing most functions of this API except events.
 
Last edited:

phjz

Member
Nov 17, 2009
46
20
Veszprem
phj.hu
phjz, it is great to see FM radio can be programmed on Omnia II.

The first post of this thread has existing GFMAPI for HTC (BRF6350 chipset) and eten/acer device (si4700 chipset).

In any of them you can find a file fmapi.h. It defines the API to be implemented.

I realized that it was not a easy to implement all functions in the API, especially RDS/status events for other developers. So I am writing an "Adaption kit" for developers to minimize efforts to implement this API.

It would also help BeamRider to implement the API for Omnia.


For the time being, you can start implementing most functions of this API except events.
Thank you, I will start on on fmapi.h. Otherwise have you any information regarding BeemRide's work? I ask this because as I see I'm re-implement what BeemRider were done before, but without any info in public, so the implementation will take a magnitude longer time and harder accordingly.
What about the code publicity? I'm planning to make my work public, but don't know nothing regarding your opinion ( my code use the decoded IOCTL in fmradio.dll and a named event only, so don't think that any legal issue can occur)