[Windows Mobile Software Development] flywhc:
Troubleshooting

* Cannot start

Make sure your device is in the supported device list.

Try soft reset?

Sony X1 has to turn off FM Radio panel.

* No sound

Plug your earphone in before running this app

Turn volume up

Try Soft reset?

* No RDS data

Please place your place in an area that have strong FM Radio signal.

Wait for longer time

Check Raw RDS output

Soft Reset

FAQ

1. What is RDS?

Radio Data System, FM radio station sends digital data during broadcasting.

Search in wikipedia to know more.

2. What digital data does RDS transfer?

* PS - Name of channel. 8 ANSI characters. Fixed length

* AF - Alternative frequencies: you can choose one or radio itself automatically choose a better frequency when signal getting poor

* PT - Program type

* RT- Radio text. can be replaced or appended.

* TA - Traffic Announcement: when radio program starting announce traffic info, it reminds you.

* TMC - Traffic Message Channel: provide digital traffic information like TOMTOM traffic.

* CT - clock time

...And more you can find from wikipedia

3. where can I find those radio stations support RDS?

RDS is a EU standard so it is popular in EU.

US has a modified version of RDS, RBDS, which has very light difference.

4. What is xFMRadio?

It is a analytical tool help me validate FMS API, and RDS data.

It supports RSSI, PS, AF, RT, PI, Raw RDS data etc.

I don't know what name shall I use so I use a letter x. eXperience, xda-developers.. whatever.

5. What is...

RSSI: Received signal strength indication. Maximum value still unknown. I guess it is 32.

PI: Programme Identification the unique code that identifies the station.

6. what is format of raw RDS?

RDS is a complicated format to broadcast narrow band with repeat data.

Its transfer speed is just 1.1Kbps, with large proportion of flow control bits.

e.g. when it sends a station's name, it sends every two ANSI characters in a 104 bits coding structure, and usually do not consequently send all strings together.

The RAW RDS format is different from RDS standard. each data package is in a form of 16 bits data + 8 bits type, instead of 16 bits data + 10 bits offset.

You can find kolomparrudi's analysis in this thread.

7. Can I use it without earphone?

Theoretically yes.

FM Radio wave length is much longer than GSM/BT/WIFI etc so it needs a long antenna e.g. USB cable.

Also FM module is switched off when earphone is unplugged.

Maybe HTC ExtUSB to 3.5mm audio adapter (YC A300) works.

Many HTC devices driver disable FM audio output as soon as unplug headset.

Power cable or USB cable that connects to PC introduce interference so that you may need low pass filter such as capacitors.

History

12 Feb 2010

Eten GFMAPI Beta 8 and new APITest.

First version that working on M800/M900.

19 Jan 2010

EtenTest and GFMAPI Beta 4.

Attempt to fix band and audio path. (Beta 3 has regression)

18 Jan 2010

EtenTest Beta 2

Try to solve seek/set frequency issues

13 January 2010

Uploaded Generic FMAPI Adaption Kit for FM driver development.

7 January 2010

Beta version of GFMAPI for Acer/Eten devices is available!

If you find any problem, please use EtenTest in the zip file to get logs.

It has to be signed with privileged developers certificate in order to use with HyperGPS.

04 January 2010

Happy new year.

Uploaded test app for Eten/Glofiish/Acer M800/M900

30 July 2009

Published test application for HTC Rhodium and HTC Artemis.

16 July 2009

GFMAPI for HTC devices 1.6

- Improve power consumption when no event subscription.

- solve mute problem on Topaz

- partially support Rhodium. Cannot receive RDS data

29 June 2009

GFMAPI for HTC devices 1.5B

- Fix defect that RDS error flag was set to wrong format

- Fix set frequency defect

23 June 2009

GFMAPI for HTC devices 1.4

- Fix misspelling of FMGetNotification

- Fix return error of FMGetNotification

- Support FMBAND_WIDEJPN (76.0 - 108.0 World wide)

Thank NetRipper for pointing out defects.

11 June 2009

GFMAPI 1.3 has been released.

Thank for 6Fg8's careful testing.

Bugs of Mute, Volume and Mono are fixed.

17 May 2009

GFMAPI 1.2B Released

* Using notifications (windows message or event) instead of callback functions

* Add FMPROP_POWER (read only)

* Fix FMClose timeout issue.

5 May 09

beemerTPPC made an alpha version of TMC driver:

http://xdaforums.com/showpost.php?p=3726772&postcount=342

It is alpha so has a lot issues and not user friendly.

Please read all other posts after beember's post before ask.

Generic FM API 1.01 (do not directly use it with HyperGPS):

http://xdaforums.com/attachment.php?attachmentid=182949&d=1241571138

Update on 22 April 09:

xFMRadio 0.4

Implemented AF parser

Improved AF selection usability

Support TMC status - so you don't have to change verbose to check if a station supports TMC

Integrate with system volume control

Setting of RSSI search level - default 10.

Fix bug: Application didn't show at foreground if run app again.

Update on 18 April 09:

xFMRadio 0.3.

Use RDS parser. It gets much more information and must faster from RDS than build in API now.

Add Bigger box for RT.

Add Status box for TP, TA, PTY etc

Display station Date/Time and timezone

Display TMC raw data if verbose >=2

Display ProgramItem, paging id, language id etc in log if the station supports them.

Radio 0.3 API

Note: methods in IFMEvents are running in another thread from FM API functions.

Update on 5 April 09:

I've uploaded FMRadioAPI wrapper.

It is a C++ class. Please read comments in the header file, which should provide sufficient information to use it.

You may implement FMRadioAPI::IFMEvents::OnFMRadioRDSData(const FMRadioAPI::TFMRDSData & aRDSData) to get raw RDS data.

Note that event functions are running in different thread so you may need synch objects.

xFMRadio 1.2 This version uses FMS_API events to get PS, RT etc.

References (credit: Midnight_Rambler, johnpatcher, kolomparrudi, iseeka):

http://www.rds.org.uk/rds98/pdf/IEC 62106-E_no print.pdf

http://www.rds-tmc.cz/res/ExchangeFormat.pdf

ftp://ftp.rds.org.uk/pub/acrobat/rbds1998.pdf

http://www.rds.org.uk/rds98/pdf/RDS_book_sample.pdf ( £68 if buy that book!)

http://www.opentmc.net/download/file.php?id=4 Open TMC specification

http://dev.inversepath.com/rds/cansecwest_2007.pdf A presentation that how to DIY a RDS-TMC system

http://www.locosystech.com/download/oem/Open TMC V2.00-1.02pdf.pdf Open TMC standard

http://www.sirim.my/iscg/tc_g_3/14819-1.pdf The TMC packet coding in RDS stream described in ISO 14819-1 standard

http://focus.ti.com/general/docs/wt...ntId=14646&navigationId=12659&templateId=6123 TI BRF6350 Bluetooth/FM radio chipset

http://books.google.co.uk/books?id=...=toc&dq=rds+paging&source=gbs_summary_s&cad=0 The broadcaster's guide to RDS

http://www.continentalimports.com/rds.html A list of RBDS/RDS features

Interesting thread about TOMTOM:

http://forum.pocketnavigation.de/thread.php?postid=1702492