Jump to content

i8000 TMC driver development


Recommended Posts

Started the TMC driver project myself. It will be a long-time task because of the lack of informations, so don't expect result in the near future. Now decoding the fmradio.dll to know the environment. Because this dll has the same structure/behaviour as in the i900 and on that platform there is a driver for TMC, if anybody have any information regarding that, it will dramatically decrease the development time, so will be appreciated....

In the case there are candidates for the development with good ce programming skill and IDA knowledge, we can work together.

Link to comment
Share on other sites

Started the TMC driver project myself. It will be a long-time task because of the lack of informations, so don't expect result in the near future. Now decoding the fmradio.dll to know the environment. Because this dll has the same structure/behaviour as in the i900 and on that platform there is a driver for TMC, if anybody have any information regarding that, it will dramatically decrease the development time, so will be appreciated....

In the case there are candidates for the development with good ce programming skill and IDA knowledge, we can work together.

Wow, awesome that you are looking into this! Unfortunately I can't help you out (no skills, only graphics skills). I do believe that the person who is working on the HyperGPS driver at XDA used to be the developer of OmniaTMC, maybe he could provide you with the required info to speed up things.

Link to comment
Share on other sites

I do believe that the person who is working on the HyperGPS driver at XDA used to be the developer of OmniaTMC, maybe he could provide you with the required info to speed up things.

Thank you, but the majority of the work is to capture the TMC data from the chip, which is belongs to the Samsung driver (must decompile and recognize what the driver do) ; after that when the TMC data need just to deliver to the application, anyhow will be used the GPSApi/HyperGPS architecture.

The results and the yielded information can be found at this page .

Link to comment
Share on other sites

Could you include any fix to listen radio through BT Headset?

Could uou explain your problem?The radio can't work without enough signal, so or you insert the jack or just connect some wire to the outest jack pin and start as I remember the FMRadioTEST.exe witch working without the jack insertion sensing. I have no BT headset, so in the case the problem is to drive the sound to the BT, I will take a look to the driver again, but there is just a call to use the speaker, nothing else.

Link to comment
Share on other sites

Guest ajhvdb
Could uou explain your problem?The radio can't work without enough signal, so or you insert the jack or just connect some wire to the outest jack pin and start as I remember the FMRadioTEST.exe witch working without the jack insertion sensing. I have no BT headset, so in the case the problem is to drive the sound to the BT, I will take a look to the driver again, but there is just a call to use the speaker, nothing else.

Yes, but with a plug only I have good reception too. So I think there is no reason to plug something in..

Link to comment
Share on other sites

The first result: I got the RDS registers value, so I have TMC data in an userspace program. The next step is to choose the TMC protocol ( I think OpenTMC will be good ) and implement a virtual comm port to send the collected TMC info to the application. See the program at my page

Link to comment
Share on other sites

The first result: I got the RDS registers value, so I have TMC data in an userspace program. The next step is to choose the TMC protocol ( I think OpenTMC will be good ) and implement a virtual comm port to send the collected TMC info to the application. See the program at my page

Got it running on my O2, getting more and more excited by the minute! If I can help in testing/skinning or buying you a cup of coffee, just let me know!

Link to comment
Share on other sites

Got it running on my O2, getting more and more excited by the minute! If I can help in testing/skinning or buying you a cup of coffee, just let me know!

Could you by me some knowledge instead? Unfortunately I'm totally new in the WM development, so every step is very hard, and the internet seems to be exponentially less and less good source of the information..

Anyhow if I can step further, I'm glad to receive feedback.

To not happen again lost the information as in the i900 case, when I'm finishing, the whole code will be public, and on that stage we can beautify the program....

Link to comment
Share on other sites

Could you by me some knowledge instead? Unfortunately I'm totally new in the WM development, so every step is very hard, and the internet seems to be exponentially less and less good source of the information..

Anyhow if I can step further, I'm glad to receive feedback.

To not happen again lost the information as in the i900 case, when I'm finishing, the whole code will be public, and on that stage we can beautify the program....

I did notice on the XDA forum the following. The HyperGPS app uses GFMAPI as the source. GFMAPI is the FM radio interface that HyperGPS uses (as far as I understand) The HTC Artemis uses the Si4701, same family as our Si4709. They have a test app for this device. My guess is, if you can get your app to create the same output as GFMAPI or look into the code of the test app you only have to extent the fmradio.dll or fix the testapp to support the same output as that and then we can use HyperGPS. Is this is a fair assumption or am I talking b***sh*t here? (As you might have figured out now, I know nothing about sw development :) )

Edited by XeOS
Link to comment
Share on other sites

I did notice on the XDA forum the following. The HyperGPS app uses GFMAPI as the source. GFMAPI is the FM radio interface that HyperGPS uses (as far as I understand) The HTC Artemis uses the Si4701, same family as our Si4709. They have a test app for this device. My guess is, if you can get your app to create the same output as GFMAPI or look into the code of the test app you only have to extent the fmradio.dll or fix the testapp to support the same output as that and then we can use HyperGPS. Is this is a fair assumption or am I talking b***sh*t here? (As you might have figured out now, I know nothing about sw development :) )

Sounds good, but I didn't find any code for the Artemis , maybe I missed something? Otherwise I planned to used the GFMAPI - it has a skeleton in source, but don't really understand yet how all the functions must be implement ( but just take a look).

But now I'm focusing how can I co-work with the chip interrupt from outside - this is a must to not loose RDS data, the program I'm written just collect some samples now, not the full sequences....

Link to comment
Share on other sites

One step further. rdsradio updated, now not collect just some TMC samples but ( hopefully ) all the TMC data, so I'm now sure that the TMC will work on OmniaII - unfortunately I'm tired a bit and must deal with my official work also, so the last step ( implement the interface to the GPS program ) will be finished later, in the meantime I will collect the information regarding the TMC and HyperGPS.

Link to comment
Share on other sites

One step further. rdsradio updated, now not collect just some TMC samples but ( hopefully ) all the TMC data, so I'm now sure that the TMC will work on OmniaII - unfortunately I'm tired a bit and must deal with my official work also, so the last step ( implement the interface to the GPS program ) will be finished later, in the meantime I will collect the information regarding the TMC and HyperGPS.

Didn't have time to try the new version up till now. Can't get it to show the new data though, it keeps locking up when I try to scan for a new channel. It does it one time then kinda freezes up. Any ideas?

Link to comment
Share on other sites

Didn't have time to try the new version up till now. Can't get it to show the new data though, it keeps locking up when I try to scan for a new channel. It does it one time then kinda freezes up. Any ideas?

I also see that, the reason unknown yet. Anyhow I abandon that because the OpenTMC not detected by iGO and nobody knows the startup sequence for the right detection ( it is not in the standard). Anyhow now implementing the GFMAPI, so there will be Royaltek and GNS - but because the architectural and language (c#->c++) migration, it will take some time.

Link to comment
Share on other sites

I also see that, the reason unknown yet. Anyhow I abandon that because the OpenTMC not detected by iGO and nobody knows the startup sequence for the right detection ( it is not in the standard). Anyhow now implementing the GFMAPI, so there will be Royaltek and GNS - but because the architectural and language (c#->c++) migration, it will take some time.

OK, good luck and again thank you for trying!

Link to comment
Share on other sites

Very close to the finish.... GFMAPI implemented, so with HyperGPS i have TMC on IGO, see this. Because some minor issue I cannot publish the DLL now, but within 1-2 days it will be ready. Also I need to talk the form of the distro with flyhwc and BeemerTPPC from XDA.

Bonus is that the PowerRadio also works in this way

Link to comment
Share on other sites

At my site there is a running version. NOT tested yet, just for the functionality, so use it carefully - I'm not responsible for any malfunction,etc....

Tried it following your instructions to the letter, unfortunately it doesn't work on my device yet. It seems HyperGPS is working (it shows output) but when I start iGO, iGO detects TMC and then says can't find TMC. I actually managed to see the tuning section once in iGO, but when I started scanning it froze iGO. I reset my phone and changed channels in HyperGPS and then HyperGPS froze. Looked like the same problem I was having with rdsradio.exe. Could it have something to do with my firmware (IL5) or is it something in the app? Normal radio is working fine when changing channels btw.

Any ideas?

Edited by XeOS
Link to comment
Share on other sites

Tried it following your instructions to the letter, unfortunately it doesn't work on my device yet. It seems HyperGPS is working (it shows output) but when I start iGO, iGO detects TMC and then says can't find TMC. I actually managed to see the tuning section once in iGO, but when I started scanning it froze iGO. I reset my phone and changed channels in HyperGPS and then HyperGPS froze. Looked like the same problem I was having with rdsradio.exe. Could it have something to do with my firmware (IL5) or is it something in the app? Normal radio is working fine when changing channels btw.

Any ideas?

Wait a bit, producing new version ...

Link to comment
Share on other sites

A bit means a full day of debugging... Now there is an updated version in my site....

Well, it sure paid off! It's working now, will test it in the car this evening and I'll post back results from that. Again, awesome job!!!

Link to comment
Share on other sites

A bit means a full day of debugging... Now there is an updated version in my site....

Thanks for your great work. It took some time to get everything up and running, but I finally managed to see the traffic information in iGo.

Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.