Jump to content

OmniaTMC Beta 2 (and unofficial Beta 3)


Guest BeamRider

Recommended Posts

Guest esticbo
Of course the external speaker setting doesn't work yet. Still hoping you can find a solution for that one too.

Change this in OmniaTMC:

Force => No Change 

in 

Force => Internal

Link to comment
Share on other sites

Guest geeky
Yes I tried this also. This how I connected the Pins:

Pin1 = Antenna

Pin2 = GND

PIN19,20 = +5V

It's really weird. It works fine, if I am not connected to Power. But as soon as I plug the charger to the car power, I am loosing the RDS Signal. I have checked the Pins. They are seperated. There is not connection between

It might be something as simple as how noisey the aerial signal becomes once you begin charging your omnia. I have been playing with my car charger and have only had TMC success when the aerial is well separated from the charging wire. Still working on a tidy solution!

Link to comment
Share on other sites

Guest Dr Nicky
Hi Beamrider,

I have one problem with my second modified car charger.

I soldered 2 new cables to Pin1 and Pin2. Everything is fine. Also I can receive TMC data. But as soon as I plug it to the car power, I am loosing the TMC RDS signal. If I unplug it again, everything is again fine.

Do you know why this happens?

I had the same issue. The adaptor you are using is of the switch mode DC/DC converter type which produces loads of EMI/RFI (Radio Interference). you need to use an adaptor that uses a linier DC/DC converter such as the 7805.

Check this site http://www.seetron.com/an_vpwr1.htm or http://www.maplin.co.uk/Module.aspx?ModuleNo=46475

Edited by Dr Nicky
Link to comment
Share on other sites

Guest BeamRider

Small update ('cause I'm still working on the code) ...

1. Audio slowdown (low volume & c.)

appears that original Samsung code is not causing it: I removed all audio Settings from it and still appearing. I noticed that if you follow this procedure:

disable ADVFMRadio (and soft reset)

launch iGO (audio issue is present)

relaunch iGO (audio issue no more present)

enable ADVFMRadio (otherwise you will not get TMC data anymore :lol: )

Appears that, when AdvFMRadio is not responding as expected, something goes wrong inside TMCSerial causing a slowdown that leads to audio issues.

Can someone confirm it?

2. Missing TMC data

I'm testing new driver threads priority settings to ensure data collection and handling also on high CPU usage from nav software or background programs. It's my guess ... let's see if improves reception.

3. Audio path

I have to set and restore Audio Path on driver startup/shutdown so the NO CHANGE option is not really woking as expected and, on exit, Audio Path remains on internal/external as set from the panel!

Fixes for point 2 and 3 are on the way, closing on point 1 :D

Link to comment
Share on other sites

Guest Mike5678

Just curious if somebody is testing this fantastic TMC-program with another (so, not iGo) navigation-program with TMC like Route 66 ?

Link to comment
Share on other sites

Guest DAlma
It might be something as simple as how noisey the aerial signal becomes once you begin charging your omnia. I have been playing with my car charger and have only had TMC success when the aerial is well separated from the charging wire. Still working on a tidy solution!

Yes I tried quite a lot. The cable I used is insulated and there should not be any connections to the other pins. But it seems to me that the cable produces noises and disturb the antenna signal. Now I will try using different cables.

I had the same issue. The adaptor you are using is of the switch mode DC/DC converter type which produces loads of EMI/RFI (Radio Interference). you need to use an adaptor that uses a linier DC/DC converter such as the 7805.

Check this site http://www.seetron.com/an_vpwr1.htm or http://www.maplin.co.uk/Module.aspx?ModuleNo=46475

Did you changed your charger with that mentioned 7805? Did you take the plan from your first link? Where did you put the whole components? Is there also another solution to avoid this radio interferences?

Link to comment
Share on other sites

Guest esticbo
Small update ('cause I'm still working on the code) ...

1. Audio slowdown (low volume & c.)

appears that original Samsung code is not causing it: I removed all audio Settings from it and still appearing. I noticed that if you follow this procedure:

disable ADVFMRadio (and soft reset)

launch iGO (audio issue is present)

relaunch iGO (audio issue no more present)

I did the test and I still have the problem
Link to comment
Share on other sites

Guest amazone

Hi BeamRider,

Did you had time to have a look concerning HTC Artemis adapted driver from your OmniaTMC ?

Here is a part of the discussion I had with flywhc on XDA :

The chip used for Artemis is the Si4701 made by Silicon Lab. I had some more specific informations here : https://www.silabs.com/products/audi...s/default.aspx. RDS is functional because FMRadio gives me the name of the radio.

After searching on XDA website, my impression is that there is no dll used for the FMRadio.exe and everything is coded in the .exe. I tried to play a little bit with IDA to see something but I know nothing about coding and disassembling.

If you can give help me (or just some advices and tools) to try to modify your driver and to adapt it to my phone, you'll be the best !

Thanks for your job !

Link to comment
Share on other sites

Guest BeamRider
Did you changed your charger with that mentioned 7805? Did you take the plan from your first link? Where did you put the whole components? Is there also another solution to avoid this radio interferences?

You may try to add a capacitor to power lines

After searching on XDA website, my impression is that there is no dll used for the FMRadio.exe and everything is coded in the .exe. I tried to play a little bit with IDA to see something but I know nothing about coding and disassembling.

If you can give help me (or just some advices and tools) to try to modify your driver and to adapt it to my phone, you'll be the best !

Yes we talked about the Artemis, my driver will not work on Artemis because of the different chipset of the two mobiles. Anyway, here are some clues (same as I already gave to flywhc):

  • It's possible that FMRadio.exe is opening a device file (Omnia uses this way FMR1: is the device file) and sending IOCTL to control it.
  • Take a look at HKLM\Drivers\BuiltIn (the builtin device driver definition storage) and look for some interesting key there (i.e. in Omnia is HKLM\Drivers\BuiltIn\FMRadio) .
  • If you find the key, look at Dll value and you'll find the DLL name (the file will be in \Windows). Then you have to reverse engineer the whole thing.

Good luck!!

Link to comment
Share on other sites

Guest amazone
Yes we talked about the Artemis, my driver will not work on Artemis because of the different chipset of the two mobiles. Anyway, here are some clues (same as I already gave to flywhc):
  • It's possible that FMRadio.exe is opening a device file (Omnia uses this way FMR1: is the device file) and sending IOCTL to control it.
  • Take a look at HKLM\Drivers\BuiltIn (the builtin device driver definition storage) and look for some interesting key there (i.e. in Omnia is HKLM\Drivers\BuiltIn\FMRadio) .
  • If you find the key, look at Dll value and you'll find the DLL name (the file will be in \Windows). Then you have to reverse engineer the whole thing.

Good luck!!

Hi BeamRider,

Thanks for the answer.

I thought that your driver should be compatible because I read that "Si4702/03-C19 software is backwards compatible to existing Si4700/01 and Si4702/03-B16 FM Tuner designs." (taken from http://www.electrosnab.ru/silabs/pdf/Si/Si4702-03-C19.pdf).

As I told you previously, I saw \HKLM\Drivers\Builtin\FMTuner instead of FMRadio and the key was Dll : Htc_Lib.Dll (available at my previous post). I'm absolutely newbie concerning reverse engineering that's why I was crossing my fingers to find an easy way to modify your driver.

In my case, FMRadio seems to open something like FMT1: (discovered using IDA).

I'll continue my research about it. May ask you some help concerning programming the chipset itself (if I'm able to arrive until this step) if I find how Artemis communicate with the Si4701 chipset ?

Thanks.

Link to comment
Share on other sites

Guest BeamRider
Hi BeamRider,

Thanks for the answer.

I thought that your driver should be compatible because I read that "Si4702/03-C19 software is backwards compatible to existing Si4700/01 and Si4702/03-B16 FM Tuner designs." (taken from http://www.electrosnab.ru/silabs/pdf/Si/Si4702-03-C19.pdf).

As I told you previously, I saw \HKLM\Drivers\Builtin\FMTuner instead of FMRadio and the key was Dll : Htc_Lib.Dll (available at my previous post). I'm absolutely newbie concerning reverse engineering that's why I was crossing my fingers to find an easy way to modify your driver.

In my case, FMRadio seems to open something like FMT1: (discovered using IDA).

I'll continue my research about it. May ask you some help concerning programming the chipset itself (if I'm able to arrive until this step) if I find how Artemis communicate with the Si4701 chipset ?

Thanks.

regarding compatibility you forget to consider how devices physically access their devices. This is mobile chipset and design dependant ... meaning that It's very unlikely that HTC FMTuner chip uses the same scheme as Omnia.

Sorry, I forgot your posts regarding the driver ... I think that flywhc is preparing for a IDA session. I will help but I have a small amount of time to start a new reverse engineering process.

If HTC has a good implementation you'll not need to program the chip, you may just need to understand the IOCTL used. For this a simple wrapper for FMTuner.dll that writes calls to a log file is enough.

Also watch for debugging strings into your DLL, usually they are very useful to understand how the driver behaves!

Link to comment
Share on other sites

Guest DAlma
You may try to add a capacitor to power lines

What kind of capacitor? The capacitor will placed between the cables of GND and +5V? Can someone help me?

Link to comment
Share on other sites

Guest Dr Nicky
Yes I tried quite a lot. The cable I used is insulated and there should not be any connections to the other pins. But it seems to me that the cable produces noises and disturb the antenna signal. Now I will try using different cables.

Did you changed your charger with that mentioned 7805? Did you take the plan from your first link? Where did you put the whole components? Is there also another solution to avoid this radio interferences?

I tried to use various RF chokes and isolating capacitors but no luck, so I built the circuit in the first link and never looked back. All the components fit nicely in a car accessory adaptor (including the heat sink). I bought all the components from Maplin (second link) and the i900 retractable adaptor from eBay (two for £1.99).

Link to comment
Share on other sites

Guest DAlma
I tried to use various RF chokes and isolating capacitors but no luck, so I built the circuit in the first link and never looked back. All the components fit nicely in a car accessory adaptor (including the heat sink). I bought all the components from Maplin (second link) and the i900 retractable adaptor from eBay (two for £1.99).

Can you make pictures of your car charger? I am interested in how you put all the components into the adapter. Did you use a board for the circuit?

Link to comment
Share on other sites

Guest amazone

Thanks for your answer BeamRider.

I'll try to have a look to the device file from Artemis but in this case, I'll probably need help because coding is a new world for me (but I'm not afraid).

One thing I don't understand is how can a wrapper driver work with log histories.

Thanks for the advice.

Link to comment
Share on other sites

Guest BeamRider
Posted in news!

:D

http://www.modaco.com/content/pocket-pc-pr...-your-er-omnia/

Can anyone provide me with a screenshot of TMC in action? If so, please PM me!

P

Thanks Paul, I have no possibilities to take screenshot right now but I will ASAP

I'll try to have a look to the device file from Artemis but in this case, I'll probably need help because coding is a new world for me (but I'm not afraid).

One thing I don't understand is how can a wrapper driver work with log histories.

WM Driver Uses Fixed function names (in your case they are FMT_Open, FMT_Close, FMT_IOControl, ...) if someone writes an AdvFMTuner.dll that exposes the same functions and logs in a file call parameters and return values (while also calling the original DLL of course). When you load and use the FMTuner given with your device you will obtain a trace on what it's doing on the driver. Cross checking logs with disassembled code helps a lot.

Start looking here:

http://msdn.microsoft.com/en-us/library/aa919753.aspx

Another option is to replace NKDbgPrintfW (useless to us) calls with your own MyDbgPrintfW that writes in the log and then recompile it. It's quite painful, but useful too.

http://msdn.microsoft.com/en-us/library/aa908739.aspx

Don't forget to sign this wrapper with Microsoft Windows Mobile 6 Privileged SDK Certs otherwise you'll be unable to load it in kernel space at boot time.

Backup frequently, if you compile a bad DLL your device will crash on boot and you have no other option than hard reset. (That's why I suggest to backup before installin OmniaTMC)

It took me a long time to find my way with Omnia also because I'm not so experienced in WM development and I had to study the WM Device Manager architecture (developing in C/C++ all the day doesn't leave me fresh mind to cointinue during the night).

I suggest you to rely on some experienced developer because working with kernel mode device driver means no debugger, frequent crashes and to take care of being in kernel mode. I will keep in touch with you and flywhc to give all the help I can.

Link to comment
Share on other sites

Guest amazone

Great, these are good points for starting !

Now, I've got new readings for long evenings :D .

I know that I can't be successful alone but if we can understand how it works, we will be able to help for developping a new driver.

Thanks again.

Link to comment
Share on other sites

Guest djungelola

Ok, followed this thread with great interest the past weeks.

For me the beta 2 works great and i have thought alot about an antenna to my carcharger.

I noticed that i go a good signal when i had my usb cable inserted so for some reason it uses the antenna pin.

I ordered i carcharger with usb output and voila, i have perfect fm signal in my car without having to modify any carcharger with my poor knowledge of soldering:-)

So now im cruising the streets of sweden with an IGo packet with nice information about queues and accidents:-)

Thanks Beamrider for your work, will donate!

/Djungelola

Link to comment
Share on other sites

Guest DAlma
I tried to use various RF chokes and isolating capacitors but no luck, so I built the circuit in the first link and never looked back. All the components fit nicely in a car accessory adaptor (including the heat sink). I bought all the components from Maplin (second link) and the i900 retractable adaptor from eBay (two for £1.99).

I am very interested how you put everything into the adaptor. Did you use a circuit board for the components`?

Ok, followed this thread with great interest the past weeks.

For me the beta 2 works great and i have thought alot about an antenna to my carcharger.

I noticed that i go a good signal when i had my usb cable inserted so for some reason it uses the antenna pin.

I ordered i carcharger with usb output and voila, i have perfect fm signal in my car without having to modify any carcharger with my poor knowledge of soldering:-)

So now im cruising the streets of sweden with an IGo packet with nice information about queues and accidents:-)

Thanks Beamrider for your work, will donate!

/Djungelola

I tried the USB Cable also and yes I can also receive sometimes TMC. But with iGo it is not useful. I am not receiving any station with iGO.

@all users with modified car chargers: What is the signal quality in iGO of TMC? If I plug my charger to the car power and Omnia I receive approx. 5-10% of signal strength, but nothing useful

Link to comment
Share on other sites

Guest jclsm
I am very interested how you put everything into the adaptor. Did you use a circuit board for the components`?

I tried the USB Cable also and yes I can also receive sometimes TMC. But with iGo it is not useful. I am not receiving any station with iGO.

@all users with modified car chargers: What is the signal quality in iGO of TMC? If I plug my charger to the car power and Omnia I receive approx. 5-10% of signal strength, but nothing useful

Me too. With the synchronization cable I got signal but not enought to get TMC information. :D

Link to comment
Share on other sites

Guest Centaur

Excellent app Beamrider. I have TMC installed and working just fine but i was just wondering if anyone knows of a Skin/Scheme for igo8 that has a sort of Distance/Status bar rather like the one that runs on the TomTom 7 main navigation screen showing how far ahead of you any traffic problems are?

Link to comment
Share on other sites

Guest Freddy971

Very good job BR. i don't know if it's a problem but after i installed omniatmc, fmradio don't work: there is no sound.

\HKLM\Drivers\Builtin\FMRadio\DLL" registy key is AdvFMRadio.dl and myrom version is XHIB3. can i have a solution ? Thanks for any answers.

Edited by Freddy971
Link to comment
Share on other sites

Guest lochindaal

Could those with a working solution let us know what ROM version and IGO8 version you are using.

I can get the TMC program working but no TMC within IGO

Thanks

Link to comment
Share on other sites

Guest Centaur
Could those with a working solution let us know what ROM version and IGO8 version you are using.

I can get the TMC program working but no TMC within IGO

Thanks

My ROM is i900XXHJ6/ACHJ2

IGO8 version 8.3.2.64873

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.