I updated to EnergyROM about a week ago, and my GPS only works in Google Maps. The GPS Test and other utilities do not see satellites.
1. I have run HTC GPS Test tool, and the $GPGSV info shows 16 satellites in view (I believe this comes from aGPS), but the 3 coordinate pieces of data are ,,, - meaning no data coming in. GPSTest also shows no satellites.
2. $GPGSA in HTC GPS Test second argument is 1, "fix not available"
3. I am on the latest EnergyROM. I have tried 2 radios, my original one that was in the stock ROM (4.48.25.20), and 4.49.25.95. I have tried with and without aGPS. I have tried some of the tweaks of the Intermediate driver settings:
A. With Advanced config: Start/Tools/Adv Config/GPS:
disable GPS logging
logfile name must be empty
old logfile name must be empty
maximum size of logfile must be 0
(soft reset, then...) delete the files :
\windows\GPSLogFile.txt and \windows\GPSLogFileBack.txt
B. Then edit registry
Under: HKLM\SYSTEM\CurrentControlSet\GPS Intermediate Driver\
Drivers\GpsOneDevice\PollInterval -> 100 (default is 1000)
Drivers\InputBufferSize -> 1024 (default is 4096)
Drivers\OutputBufferSize -> 1024 (default is 4096)
Drivers\SleepOnNoData -> 100 (default is 1000)
Multiplexer\MaxBufferSize -> 512 (by default not present, you have to create it as a New Value)
4. I have 2 AT&T HTC Tilt 2 phones, both configured identically (I move SIM card between them). Both are on the same ROM and Radio, and both act exactly the same - no GPS signals. So I don't think the GPS has failed, as it's two different phones.
5. External GPS set to COM4 (which appears correct based on the HTC tool seeing NMEA info on that port), hardware is set to No Port, 4800 baud. I also have it set to let Windows manage the GPS.
6. I have tried two versions of the Energy ROM, doing a Task29 in between; Feb 12 and Feb 27. No difference.
7. I run Bing, and it never gets a location. I do see my location in Weather though. Today Google only senses location to within 3500 meters; earlier this week it was 100 meters.
I am trying to be exhaustive and deliberate in finding the problem, but I have run out of ideas. Something must have changed, as I used this GPS all the time with Bing for voice navigation, and it was 100% reliable. Can anyone help with what could be the problem?
Thanks for your help!
One additional piece of info, I just did a hard reset of one of the two Tilt 2's, tested without agps, no lock on satellites. I then turned on agps, downloaded data, tried again, still no lock. I am outside on a gorgeous day with hardly a cloud in the sky too.
Thanks for your help - I am just out of ideas...
Is it possible there is some program in the cooked ROM conflicting with the GPS? Anyone with an idea?
Try it with the stock ROMs and see if it works there. If it doesn't then it might be hardware related.
HTCTilt2ATTOriginalShipROM.exe
RUU_Rhodium_S2_ATT_US_2.10.502.4_Radio_Rhodium_4.49.25.95_Signed_Ship.exe
If you have the program "QuickGPS", check if your satellite list expired. If it did, update and try your GPS program again.
com4 for software, none for hardware, BAUDRATE 57600. this works for me. and for some reason this gets set back to 4800 sometimes and that does not work.
tpc tp2, tmobile stock, sense turned off, wm 6.1
well, not so sure about my previous response. might have been a coincidence. i go back to external gps and cannot get it to stay at 57600.
i did download htc gps tools and found that if i had it in airplane mode it took seconds to find the satellite. if i had data communications enabled it took about 1.5 minutes. this was consistent.
Related
Howdy,
I've just upgraded to the O2 Orbit phone, and am trying to get the GPS working, however, I can't seem to. In settings, all I can see is external gps, but this phone should have an inernal one (it even has the antenna in the back).
For the life of me, i can't seem to find out how to get the GPS working... anyone could help?
a.
Hi Adam.
Which GPS software are you using on your device?
At the moment, none, as before I bite the bullet and buy one, I wanted to see how good the GPS receiver was... so I tried the TomTom GPS driver, that includes a testing thing that shows locks on sats, and so far, after about 10 minutes, still nothing...
Having said that, I tried Google Maps, and that can't get a GPS lock either.
Try making sure the settings are setup for the default configuration before using GOOGLE MAPS.
Start>Settings>External GPS>GPS PROGRAM PORT = COM4
Then try google maps using try MENU>Track Location and see if the GPS starts working flashing AMBER LED and you should get a text message at the top of the screen saying initializing GPS and searching for sats.
Good luck, I found this Artemis to work beautifully with TOMTOM6 and a 2GB mSD card.
I've added a program called GPS Viewer, this gives you GPS gives some handy GPS details.
As for the GPS settings:
Programs
GPS program port:COM4
Hardware
GPS hardware portNone)
Baud rate:115200
Access
I have 'Manage GPS automatically' ticked.
My deveice always seems to want a vertically sight of the sky to locate the satellites but once connected i can take it indoors no problems.
Interestlingly, when I make the change to Baud Rate in hardware, and click ok... if I go back, it has reset itself to 4800?
A.
quickGPS
in my HTC3300, I've found QUICKGPS ? I've tried to run it, but after a few minutes it send a message so it cannot make the connection
Anyone can help me
thx a lot
michael
quick GPS is just to speed up the process the phone neesd to locate the sattelites.
well but if i were you i would check the baudrate. the default setting is at 4800
thank you very much really nice tip i spend about 3 hours try to get it working but now done it in 1 minuts and working but keep saying no valid signals whats that mean???
bex said:
Try making sure the settings are setup for the default configuration before using GOOGLE MAPS.
Start>Settings>External GPS>GPS PROGRAM PORT = COM4
Then try google maps using try MENU>Track Location and see if the GPS starts working flashing AMBER LED and you should get a text message at the top of the screen saying initializing GPS and searching for sats.
Good luck, I found this Artemis to work beautifully with TOMTOM6 and a 2GB mSD card.
Click to expand...
Click to collapse
Hi,
I have an unbranded UK TP2, ROM 1.19.401.1, Radio 3.46.25.30 (The latest ROM and the radio with the GPS fix) however I cannot get quick GPS to work.
On the surface quick GPS seems to work correcly, it will connect and download the required data, it will then show that data is valid for seven days, however it has no effect on the time to first fix from a cold start.
I have tried the following experement, hard reset and install only HTC GPS tool, (no tweaks). Then go outside to get a clear view of the whole sky. Then use HTC GPS tool to perform a Cold start. GPS lock takes 5 mins 40 sec without QGPS, Then exit GPS tool and update QGPS and perform GPS cold start again, again GPS fix then takes 5 min 30 sec.
Hot start performance is fine, sub 10 second and warm start is also satisfactory 30 sec(ish)
Does Quick GPS make any difference to a cold start for anyone else? (after all it main purpose is to speed up cold starts.)
Cheers
Tom
When i looked at the reg settings for GPS, A-GPS is disabled by default so quickgps data isnt used - my ROM is same as yours.
ag_woodward said:
When i looked at the reg settings for GPS, A-GPS is disabled by default so quickgps data isnt used - my ROM is same as yours.
Click to expand...
Click to collapse
Quick GPS is different to A-GPS, I agree A-GPS is disabled by default in the ROM (it also has a dummy ip address in the settings so would never work if enabled). However Quick GPS is a separate entity, it seems like the GPS driver is not utilising the ephemeris data from the xtra.bin file downloaded by the QuickGPS app.
Can anyone confirm that Quick GPS is working on their TP2 (Cold start only)
Cheers
Tom
ag_woodward said:
When i looked at the reg settings for GPS, A-GPS is disabled by default so quickgps data isnt used - my ROM is same as yours.
Click to expand...
Click to collapse
That's rather scary. Is there any way to get A-GPS to actually work?
Although I see what you mean about it's scary, I really dont experience any lengthy delays in getting a fix, even on a poor weather day I get a fix in around 1 min (never timed it but I am impatient so it would be obvious )
I use Copilot - which I must say v8 is a bargain compared with other offerings.
The only irritation I do have with HTC is their inability to get rid of the GPS lag....so sick of trying things but you learn to live with it - specially as the new BT stack prevents connection to external GPS receivers (they can be paired but CP7 and TOMTOM7 wouldn't communicate with them). 1 step forward, 2 back!
I've been trying for quite a long time to make my LG KS20 show me the CellID of the tower it is currently connected to. There are so many applications around the net that claim to do that, but unfortunately all of them just return 0 as current CID. I tried making my own application using the RIL's RIL_GetCellTowerInfo but I also always get 0. I tried signing my app with a temporary certificate, and adding that certificate to the phone but I still get 0. I tried different mobile operators and the result is always the same... And yet, Google Maps can identify my location without a problem so it is doable! Does anybody have any idea how to do that? Please, help, I'm getting very desperate here
I tried to get the cellId for a long time, but I think that's there's something blocking it in the RIL, that's why we always get 0 from RIL_GetCellTowerInfo.
As for GMaps, it never found my position automatically using celltowerid. Are you sure your position detection is not based on ip address ?
If I remember well, there are multiple ways to get celltowerid : 2 of these ways are rilnotifycallback and rilresultcallback.
I found a software( can't remember its name sorry, but if you're trying to get cellid I bet you know it) that could test each mode (perhaps 5/6 different methods) to try to get cellId. I remember that the 2nd one (was it result or the notify callback?) kind of worked. You have to :
- launch the (notify or callback) test mode -> return value is 0 .
- Then disable phone driver (easiest way is to go to airplane mode), -> the cellId, displays erratic values (000000 or fffff or whatever there is in memory at this place)
- Then enable phone driver (by going back to normal mode) -> the cellId display is right for a few seconds (it matched the values returned by another phone I had) but isn't updated after that.
Don't know if it helps you, but that's as far as I went concerning cellid.
Thanks for the info. Well, I tried manually writing C# code for RIL. Of course GetCellTowerInfo didn't work so I tried with DevSpecific. I bruteforced all the possible commands of the type {i, 0, 0, 0} but none of them seemed to work. Almost all of them gave an error "not implemented" or a basic error. Only {16, 0, 0, 0} returns an array of 20 bytes, but no combination of those gives the LAC (which I have via MiCard) so there's no CellID as well (as far as I know it would usually return the LAC combined with CellID). So it's a dead-end. The only thing I could not get up and running was querying the GSM modem directly through a COM port. I found that the RIL COM port should be 1, but no matter which command I send it remains silent. I disabled all the security in my device (it was in tier one mode before that) and signed all my applications with a personal certificate, which I added to the trusted certificates on my KS20. That didn't help as well. I think it's simply not implemented in the firmware of the radio.
And about Google Maps, well I found out that I actually used it via WiFi when I tried. Firstly I thoght it got the CellID because my laptop was running on the same WiFi, but "My Location" via maps.google.com just showed an error, while it was correct on my cell phone, but when I tried it elswhere and via 3G today, it showed me an error "Your location is not available now".
To wrap it up, as Google haven't come up with idea how to get CellID, probably I won't be able as well. But the topic still remains open (and if I come across new ideas, I'll definately try them). So if somebody has any other idea, I would really appreciate if he would share it.
i develop a geo location application my windows mobile phone is htc fuze with windows mobile 6.5
I want only to show me, Longitude and Latitude but i can't
I build this kowor.com/version/Kataskopos.apk
this link contain tha source but maybe it's not correct
Does anyone have any idea ?
I coulndn't succeed in getting the Cell ID to LG KS20 so I migrated to Android.
Anyway, to show the longitude and latitude you need GPS. If you don't have one, you could use Cell ID but it will give you a big error (typically around 1.5 km) and you still need to send the Cell ID to a database online which will convert it to geo coordinates (databases like Open Cell ID).
Good luck!
I've been using different ROM's lately so I know it's not that, but randomly (not sure when or why) my google maps will reset the gps com ports to COM0 and baud 4800. As y'all know, these settings don't work, so I was wondering if there was a registry setting or something that would prevent this from happening.
Thanks!
Anyone have an idea on this?
Demonic240 said:
Anyone have an idea on this?
Click to expand...
Click to collapse
Are you using the latest gmaps version (4.0)? I seem to recall that happening to me once or twice when I was on the previous version(s)
I'm using version 4.0.0. It doesn't seem to have changed itself for a couple of days now though =/
This happened twice more last night and today. The only repeatable common denominator is possible soft resets (I haven't checked after each one, nor have I checked too much throughout the day)
Alrighty, I was just outside, used ChartCross GPSTest to lock my satellites. Started up Google Maps, set the com port and connected instantly to 5 satelites. Exited Google Maps, walked inside to my desk (there's no windows), started up google maps and the com port had reset to 0. I'm using Radio v. 4.49.25.91 w/ the latest NRG GTX 21898 themed ROM. Is anyone able to help? Perhaps there's a registry setting somewhere? Something?
What are your settings in External GPS?
Is Manage GPS automatically set?
gsx600f said:
What are your settings in External GPS?
Is Manage GPS automatically set?
Click to expand...
Click to collapse
Programs:
GPS program port - COM4
Hardware:
GPS hardware port - (None)
Baud rate - 4800
Access:
Manage GPS automatically (recommended) - checked
I have tried setting the GPS in googlemaps to Managed by Windows and Set Manually. In both cases the com port will reset to 0.
Not sure if this means anything, but I found this in my registry:
\\HKLM\System\CurrentControlSet\GPS Intermediate Driver\Drivers\GPSOneDevice\CommPort
The value is set to GPS0:. Not sure if this is doing it, and I don't want to make a change for fear of messing it up.
Some more information.
Open Google Maps > Set Com to 4 > select Use GPS > Close Google Maps
Re-open Google Maps > Com is set to 4 > Close Google Maps
Re-open Google Maps > Com is set to 0 and Baud Rate has reset to 4800
So baffling =/
Demonic240 said:
Some more information.
Open Google Maps > Set Com to 4 > select Use GPS > Close Google Maps
Re-open Google Maps > Com is set to 4 > Close Google Maps
Re-open Google Maps > Com is set to 0 and Baud Rate has reset to 4800
So baffling =/
Click to expand...
Click to collapse
You don't set google maps to "managed by windows"? If you're using that, then yes the listed values for com and baud revert back to the defaults, but that doesn't affect what is used as long as you tell it to just use the windows-supplied settings....it happens on mine too (the values reverting), but I'm having no GPS issues, and I've got true 2m accuracy, even though it says "COM0" and "4800"
sirphunkee said:
You don't set google maps to "managed by windows"? If you're using that, then yes the listed values for com and baud revert back to the defaults, but that doesn't affect what is used as long as you tell it to just use the windows-supplied settings....it happens on mine too (the values reverting), but I'm having no GPS issues, and I've got true 2m accuracy, even though it says "COM0" and "4800"
Click to expand...
Click to collapse
I have it set to Managed by Windows, but when doing so it never locks on to a satellite. If I change the com port and keep it set to managed by windows then it'll lock a satellite. I'm gonna go test it out to make sure I'm not full of hot air (wouldn't suprise me in the least)
Demonic240 said:
I have it set to Managed by Windows, but when doing so it never locks on to a satellite. If I change the com port and keep it set to managed by windows then it'll lock a satellite. I'm gonna go test it out to make sure I'm not full of hot air (wouldn't suprise me in the least)
Click to expand...
Click to collapse
Ok, went outside for a bit. I left my com set to 0 in google maps while Managed by Windows was checked. Never locked any satellites and it eventually timed out. Started up HTC GPS Tool and it couldn't lock any satellites either. Tried using Chartcross and it locked on to 3 satellites before I had to come back inside.
Demonic240 said:
Ok, went outside for a bit. I left my com set to 0 in google maps while Managed by Windows was checked. Never locked any satellites and it eventually timed out. Started up HTC GPS Tool and it couldn't lock any satellites either. Tried using Chartcross and it locked on to 3 satellites before I had to come back inside.
Click to expand...
Click to collapse
So the only way you get a lock in gmaps is if you set it to manual control and COM4/4800? and that reverts any time you restart the program? When you're using manual settings in gmaps, you may have to go back to the phone's GPS settings and uncheck the "managed by windows" option there, for the settings to not revert when gmaps opens, just a guess. I'll test it too in a few minutes
Firstly thanks popcorn1122 so much for amazing improvement of A/GPS here
For my findings, some parameters in the <hal> paragraph of /system/etc/gpsconfig.xml could also be added to enable the offline LTO-AGPS (Need rooting, and pls backup the file)
(red text for enabling LTO and blue text for optionally enabling logging for the first fix)
<hal
acPortName="/dev/ttyS0"
lBaudRate="115200"
cLogEnabled="true"
acLogDirectory="/data/location/com.broadcom.gps/logs/"
ltoFileName="/data/gps/lto2.dat"
acNvStoDir="/data/location/"
acCmdPipeName="/data/location/gpscmd"
bAllowIgnoreOsc="false"
bUseHalLogger="true"
/>
To get the LTO file, we could either:
(Method 1 using GPS Aids)
1. Create the folder /data/gps which GPS Aids puts the LTO file, and grant rmxrmxr-x permission
2. Install GPS Aids with both Data and GPS ENABLED, otherwise the Download LTO functions will be blocked and need re-configuration
3. Download the LTO file. GPS Aids shows how long since it has been downloaded
(Method 2 manually download)
1. Get lto.dat or lto2.dat from either : (7 days)
http://gllto.glpals.com/7day/latest/lto.dat
or (7 days)
http://gllto.glpals.com/7day/v2/latest/lto2.dat
or (30 days)
http://gllto.glpals.com/30day/v2/latest/lto2.dat
2. Rename and move the file which fits the setting of the modified ltoFileName parameter of gpsconfig.xml, granting sufficient permission for the folder like that in Method 1
(Method 3 auto download)
In the early time I developed a script to download the LTO file while mobile data switched on, and added service and trigger routines from the relevant system properties. Seeking advice by CM7 developer @maniac103, those triggering are not fully functional thus not recommended. Instead, pls try his latest build since June (here) with a marvelous settings UI for this case. Thanks Maniac for his kind concern and efforts on it.
Within the validity of the LTO file, the fix should be done in seconds even in limited open sky. We can download an updated LTO file anytime to keep the performance.
Reference:
http://www.htcmania.com/archive/index.php/t-151202.html
(sorry I cannot understand the language but thinking some param. may help)
http://forum.xda-developers.com/showthread.php?t=789383&page=4
(refer jupiter.xml from a model of SGS)
https://github.com/CyanogenMod/android_device_samsung_vibrantmtd/pull/3
(bash script for auto dowload)
https://github.com/jad3675/android_...283f4a26989dc07d45da8a8af580f51492d45f#L0R373
(init service for auto dowload)
Thanks folks for optimizing Defy for releasing its real performance!
I had tried all that before but had come to a conclusion that lto.dat never used or downloaded. The cellid are stored in learn_store.bin which is stored in /data/location
emphersis is downloaded and stored in gpsdata.nvs.It is used by motorola defy for a specified duration (seems 1 hour as per location.cfg - MIN_NAV_REQ_INTERVAL = 3600000 )which is updated in location.cfg if there is no gprs available.
I see... I also bear no hope originally just I think Defy uses BCM4750 and Broadcom promoted LTO years ago, and I found the params. like acLtoDir and lbsSyncLto from the htcmania.com thread last week, with referring other similar XML, and continue the trial-and-error. Hope this finding makes us feel our experiments worthy
manfifer said:
(Method 2 manually download)
1. Get lto.dat or lto2.dat from either :
http://gllto.glpals.com/7day/latest/lto.dat
or
http://gllto.glpals.com/7day/v2/latest/lto2.dat
2. Allocate the file which fits the setting of acLtoDir and ltoFileName parameter of gpsconfig.xml, granting sufficient permission for the folder like that in Method 1
Click to expand...
Click to collapse
What is the difference of lto.dat and lto2.dat? This files differ in size 65/39 kB.
popcorn1122 said:
I had tried all that before but had come to a conclusion that lto.dat is downloaded by the gpscmd file and converted into learn_store.bin which is stored in /data/location
learn_store.bin file is used by motorola defy for a specified duration which is updated in location.cfg if there is no gprs available.
Click to expand...
Click to collapse
I am confused. What I found is, that (without data connection on a CM7 ROM) learn_store.bin is updated, whenever GPS got a fix.
My assumption is, that this contains data that can help to get a quicker fix next time.
But I assume, that this contains only infos about the sats that has been involved in the last fix (which are only a few). Where else the Defy should now about the other satellites?
A downloaded lto.dat on the other hand probably contains information about all the satellites.
What do you think about my speculations?
PS: I found an interesting document:
The LTO data should be around 30kB and valid for around 4 days.
http://www.broadcom.com/collateral/tb/LTO-TB100-R.pdf
An indeed, the BCM whould support the LTO
http://www.google.de/url?sa=t&rct=j...sg=AFQjCNErL9qjljAhfOKhtIYORo_sn3BzDQ&cad=rja
You could use the LTO file from either URL, just rename it to be the same as the parameter "LtoFileName" and place it in any folder set by another parameter "acLtoDir". Both of them serve the purpose just the V2 version is smaller in size, similar to the one downloaded in GPS Aids. The app. downloads it as lto2.dat in /data/gps/, so I have to build this folder and set the above two parameters in gpsconfig.xml shown in the thread before installing the app.
Sorry I have no idea how LEARN_STORE.bin and gpsdata.nvs is created (thanks popcorn1122), just they would be expired and as you've raised in popcorn1122's thread, after 6 hrs or shorter time from a SUPL fix, apart from the birds with expired ephemeris (but coarse almanac data), there have other new birds visible without AGPS data in the last fix. When we are offline, the chip tends to fix them from scratch again gradually.
Like the Broadcom Technical Brief promoted, offline AGPS is useful while we are standing under dense skyscrapers without network assistance. It also expires after around 4 days, but its sufficient for me to update another LTO file. I keep turning off any data before testing LTO with GPS Status, and delete /data/location if I need restarting the phone. This is stubborn from normal application while I can easily get SUPL fix with my 3G data plan. But I'm eager to find the solution when one day I'd like to get a quick fix while travelling abroad. (time is valuable in the tour )
LTO files contain days of ephemeris data of all the birds, once the position is fixed, even some birds with weaker signals, whatever visible or obstructed, can aid the fixing. But it could not be applied properly in the stock or CM7 gpsconfig.xml settings.
I believe the Broadcom chips in this generation has this technology in their released chips as it has been applied since the era of WM phones. The key is just the implementation of the driver or configuration.
I did what you suggested in your first post, changed/added the red lines.
used "lto.dat" as filename and "/sdcard/download/" as dir.
I added a shortcut to the lto.dat (the bigger one) to my browser, so that is becomes easy to download (it will located that in the dir mentioned above.
But here I get some trouble with permissions. For a unknown reason, the permission is (after download) --xrwx--x .
Even with a terminal an su I can't change the permission to rw-rw-r--. Very strange, but OT here. ls -l show system / sdcard_r as owner.
(Edit: its because of the filesystem FAT: Can you test, whether it works from that folder despite the permissions as well?)
So I copied the file to /tmp and changed the permissions. You are mentioned
"rmxrmxr-x permission". Imho it is sufficient to be readable, at least x is not neccessary, as this is just data, right?
Reboot the phone with all data (WIFI/GPRS/EDGE/3G) DISABLED (for better testing, delete /data/location folder to clear all the GPS cache). Once again it needs some time for TTFF. Then we should notice the birds connected increased dramatically like fixing with SUPL. No need endless waiting of unassisted GPS for 3-4 days until next reboot. Of course we can download an updated LTO file anytime to keep the performance.
Click to expand...
Click to collapse
To clear the AGPS data it should be sufficient to use GPS Status. It can download and clear AGPS data.
Regarding deleting the files in /data/location:
-The gpscmd is an empty file (pipe?) so no need to delete.
-gpsdata.nvs and LEARN_STORE.BIN is recreated with a new call of GPSStatus
But the location.cfg is containing some settings and is not recreated. This is lost now. It will be created some location_tmp.cfg, but it is empty.
Regarding SUPL: Is this a service which runs with or without an DATA connection to the service provider? What I mean, do I have to enable data connection for this? Some data (like which cell, what time,..) are received without a data connection ...
I have come to a conclusion that lto.dat is not used by BCM4750 driver of defy.
Just check my post with updated information.
The driver brcm_guci_drv is the most important file which contains all details what the defy does and only takes port & speed & chip type & chip speed details from gpsconfig.xml at the startup.
The same case with location.cfg... half of the file is not used by defy. Only parts of SUPL in location.cfg are used by defy.
I tried every fix to improve offline GPS performance, but with no "visible" effect so far. But as some poeple like manfifer or popcorn told about improvements I did some test with initial state again - just to be able to make a real comparison.
The results are mixed. I did a initial download of a agps and get a fix in
Then I switched of gps and network. Every hour i enabled gps and checked with gpsstatus th ttff. It varies: 7, 100, 15, 10, 84, 74, 8, 62, 77s.
Than after 1.5h (i missed the 1h ): 758s
Again in 1h rythm: 60, 37, after midnight 445s(!!!).
At night I slept an started after 6.5h again more or less in 2h time distance:
26, 54, 221, 189, 859(!!!!) after 3.5h, 9s (after 1h:20min) ...
It is clear, that delay between GPS tests affects the ttff. But
@popcorn1122:
do we have a chance to get a driver that is compatible and handles lto data?
defy isn't the only phone with this broadcom chip, and froyo-kernel has been used in many devices.
how do you know about the driver brcm_guci_drv. I though this gps.jordan.so is responsible.
starbright_ said:
@popcorn1122:
do we have a chance to get a driver that is compatible and handles lto data?
defy isn't the only phone with this broadcom chip, and froyo-kernel has been used in many devices.
how do you know about the driver brcm_guci_drv. I though this gps.jordan.so is responsible.
Click to expand...
Click to collapse
Motorola Defy uses Broadcom GLCT ver. 2.1.3 79917, 2010/Jul/27, 09:21:25 driver. This is an old driver. Perhaps Motorola never bothered to update the driver to take real potential of the BCM4750 chip. The LTO.dat is not downloaded nor used. Also the settings of SUPL are left with basics and the fallback supl to google is disabled by default. The whole gps is dependent on MSA & MBS & SUPL. The fixes are possible without gprs or wifi or network towers. Hence the ephemeris data is straight downloaded from satellites. The GPS fixes & ephemeris data are stored in LEARN_STORE.BIN.
It is difficult to get the new driver for defy. LG , Iphone & Samsung have used BCM4750, but they have their own custom driver to meet their requirement. I have tried the LG driver called glgps , but the gps did not initialised even with the original defy config file.
gps.jordan.so file is not used by defy. The stock installation has no such file. Similar file was in Milestone and defy+. But not in defy. Hence brcm_guci_drv is the driver file and is the same MD5 as of defy+. Milestone brcm_guci_drv has a different MD5.
starbright, its great to make use of our browser downloading the LTO file instead of installing GPS Aids. Just for my CM7 browser, it won't overwrite the old file but rename the new one as "lto2-1", and I donno why it changes the extension to .txt , resulting lto2-1.txt. Anyway I tested changing the acLtoDir and LtoFileName param. to "/sdcard/download/" and "lto2.txt", the LTO is also effective after reboot and first lock. The permission of the downloaded file is --xrwxr-x, the same as the one in /data/gps from the app. I try bookmarking the whole URL but it won't download but view it, so I can only bookmark the path and download manually. Whether the LTO works is obvious. When 4-5 hrs after a SUPL locking, u need more than 1 min to lock, then the LTO is most probably failed. Normally its just several seconds, even no data for 3 days.
popcorn, I'm now using the 120304 build of CM7, attached my brcm_guci_drv, could u confirm if it has been replaced from the stock one. I tested both gps.jordan.so from CM7 and your thread, both work with SUPL and LTO, but after removing it and reboot, my GPS Status cannot view any birds and no more blinking GPS icon when enabled. If it dosen't exist in stock ROM, there should have some other libraries replaced by CM7, including brcm_guci_drv probably.
I attach the brcm_guci_drv from CM7 and the modified gpsconfig.xml early this thread.
I use Opera Mini and set the download-path as tile in start-page. Just open it an lto.dat will downoaded to the path. It keeps the *dat-extension, but make lto-2.dat, lto-3.dat ... if the old file isn't cleared.
manfifer said:
... the LTO is also effective after reboot and first lock. The permission of the downloaded file is --xrwxr-x, the same as the one in /data/gps from the app. I try bookmarking the whole URL but it won't download but view it, so I can only bookmark the path and download manually. Whether the LTO works is obvious. When 4-5 hrs after a SUPL locking, u need more than 1 min to lock, then the LTO is most probably failed. Normally its just several seconds, even no data for 3 days.
Click to expand...
Click to collapse
Sorry, have difficulties to understand this. You mean, LTO is working? No problems with the location and permission on /sdcard ? What is a SUPL lock? Does this data need a data connection or is it transferred (like clock or name of cell you are logged in without a data connection) just by login to a GSM network. (data connection active or not) Can you explain under wich circumstances the TTFF is so fast?
I couldn't see this helping effect, maybe have to test this again and compare your files.
I used lto.dat and CM 7.2.rc.
Sorry I should use "fix" instead of "lock", just mean "successful positioned"
Yes data (EDGE/GPRS/3G/WIFI) is needed to communicate with the SUPL servers
(supl.google.com, supl.nokia.com, etc.) to get a fast fix, just logon to GSM network does not work. So the use of LTO is to get rid of such network barrier, for several days.
In my testing whatever the file is in the phone (/data/gps/) or SD Card
(/sdcard/download/), it does works under --xrwxr-x , just I have to modify acLtoDir and LtoFileName param.
My TTFF (after restarting the phone) is around 30sec-2min., not fast as I keep data connection OFF for testing. The power of LTO comes with the 2nd fix and so on, whatever in open space or under dense buildings, whatever how long u restart GPS from the previous fix (good to test after we wake up as all fixes and cache should hv been expired.), usually the fix costs less than 5sec. The effect keeps until I restart the phone again (change SIM card, the phone hangs up ) or the LTO file is used more than 4 days around. But, if u move the file away, after say 3 hrs, the fix will take longer gradually, until costing more than a minute. So far, no data is allowed when GPS on.
I am just wondering why smartphones have to use A-GPS for fast fix? I own standalone gps device and hell there is a fix within 30-40sec or less without need of any data connection as on smartphones.
manfifer said:
For my findings, some parameters in the <hal> paragraph of /system/etc/gpsconfig.xml could also be added to enable the offline LTO-AGPS (Need rooting, and pls backup the file)
<hal
acPortName="/dev/ttyS0"
lBaudRate="115200"
cLogEnabled="false"
acLogDirectory="/data/location/com.broadcom.gps/logs/"
acLtoDir="/data/gps/"
ltoFileName="lto2.dat"
acNvStoDir="/data/location/"
acCmdPipeName="/data/location/gpscmd"
bAllowIgnoreOsc="false"
bUseHalLogger="false"
LbsEnable="false"
LbsLocal="true"
LbsSyncLto="true"
LbsSyncCells="true"
/>
Click to expand...
Click to collapse
My general impression is, it really helps.
Before clearing the AGPS data, TTFF takes just a few seconds, althought the last fix has been done >12h before.
But there is one thing, that let me doubt a bit. At least my understanding of lto (that is independend from AGPS) and AGPS seems to be not correct
My observation is the following:
- I start GPSStatus (without GPS and Data connection) and clear AGPS data.
- Close GPS status and wait a minute
- Enable GPSStatus and wait for TTFF - then it takes (lto.dat is around 1 day old) again very very long > 5min .
Do you know when the lto.dat will become active?
To summarize this (this is just what I currently assume):
a) With WLAN on and AGPS the fix is rather fast
b) after disabling WLAN, the once downloaded AGPS data seems to be helpful only for a very short time 1h...6h.
c) with lto-data it seems that the TTFF is fast again, although AGPS data is older than 12h
d) with cleared AGPS data, but with lto it need very long time (700s) for TTFF.
Can you do this test too?
Certainly... thanks for helping me to test this case so far.
I started the test without AGPS for 5 days. I started GPSStatus and cleared AGPS data (I hv to turn GPS ON else it'll be disabled) and turned them off for some minutes. When I start over again, it takes around a minute to have a fix, similar to the 1st fix after restarting the phone. The next fix is done in seconds in the next morning without data i.e. LTO works again.
Before this test, I tried modifying the xml to have the chip generate a log in each first fix after restart (blue words in my 1st post), but it doesn't carry on logging until the next restart. It states "Skip reading lto", imho it just indicates LTO doesn't help in the 1st fix.
Some findings I made...
the /system/bin/location file is responsible to generate LEARN_STORE.BIN
the /system/usr/bin/brcm_guci_drv is the gps driver which gets few parameters mentioned in gpsconfig.xml when the defy starts. Majority of parameters are already mentioned in the driver itself.
the /system/lib/libgps.so file is the run time file which has majority of parameters of location.cfg
location.cfg file has supl server location getting injected to gps for LBS functions. That file also has a fall back sulp server which by default is disabled. The last GPS time of a valid fix is stored in /data/location/location.cfg file
The question still remains unanswered:
Is lto.dat getting downloaded automatically?
Also I tried to get some files from motorola xoom (honeycomb), the driver(dec 2010) and other files mentioned above... but the radio and gps do not initialize with those new versions.
manfifer said:
I started GPSStatus and cleared AGPS data (I hv to turn GPS ON else it'll be disabled) and turned them off for some minutes. When I start over again, it takes around a minute to have a fix, similar to the 1st fix after restarting the phone. The next fix is done in seconds in the next morning without data i.e. LTO works again.
Click to expand...
Click to collapse
You can set GPS Status to be work even with GPS disabled (it just shows a warning than). And so it is possible to clear AGPS data, without enabling GPS.
After that I have problems to get a fix. (Have to test it again, currently heavy rain might influence the test)
This is a bit strange to me. From what I have heard, the AGPS data are injected into the chip. But how can they cleared if the chip is not powered?
It might have some low power standby, but who knows?
manfifer said:
Before this test, I tried modifying the xml to have the chip generate a log in each first fix after restart (blue words in my 1st post), but it doesn't carry on logging until the next restart. It states "Skip reading lto", imho it just indicates LTO doesn't help in the 1st fix.
Click to expand...
Click to collapse
Where does it write a log?
Good information.
Hope the defy can get fast GPS fixed.
starbright_ said:
Where does it write a log?
Click to expand...
Click to collapse
when you edit gpsconfig.xml with following lines, your logs are activated:
cLogEnabled="true"
bPrintToConsole="true"
acLogDirectory="/data/location/logs/"
bUseHalLogger="true"
I am using this solution now for more than 2 weeks. Never need more than 120s (mostly less than a minute) to get position (without active data connection).
Just once I takes very long - that was the time, as lto.dat was more than 1 week old. Great job!!!!
The download of lto.dat could be optimised. With my fav in browser I need still a view actions:
- open filemanager
- delete old lto (to prevent to get an lto-1.dat, lto-2 dat ...)
- close filemanger
- open browser
- download by push a favorite on startscreen.
Best would be just one button/script, best running automatically every 5 days when WLAN/GPS connection is established.