Related
There's this free web service called "Citizen's MapSite", which is free to use, where you can browse detailed topological maps of Finland. It also has search functions to use with GPS coordinates..
I'm not sure if they have this kind of service in any other countries, but this seems like a great way of using detailed topology maps in a number of outdoor activities for free!
the site itself is kansalaisen.karttapaikka.fi. Now all we need is an application to start up the GPS and (at the push of a button) open up a browser with current GPS coordinates as the search terms. Basically an app that creates an http link using data from GPS.
..would anyone be interested in giving this a shot? In the mean while I need to manually copy and paste the coordinates
Here is a quick implementation which shows the current position.
Since I don't have a gps device and even don't live in Finland you are the first official beta tester!
known issues:
trackbar for the current zoom factor doesn't work
the network connection will not be closed on application exit
gps will be closed on application exit
Next time, please refer your requests to the Q&A section instead.
as this is already in development stages, change the subject to DEV and we'll leave it at that.
awesome heliosdev! I'll be leaving my "official beta test report" ASAP :-D
Teh Official Beta Test Report:
The search doesn't display any results and it seems its because the search is done with the wrong type of coordinates.. There's a drop down box with different types of coordinates and I think that the search should be done using "EUREF-FIN maantieteelliset (~WGS84)" ("EUREF-FIN geographical (~WGS84)" in English) instead of the "KKJ..." which is the default.
Here's an example of how the url behaves (if it's any help):
Using these coordinates N: "60.477603" E: "22.222587" (and "EUREF-FIN maantieteelliset (~WGS84)" in the drop down box) as search criteria, the site url becomes this:
http://kansalaisen.karttapaikka.fi/...ale=8000000&tool=siirra&styles=normal&lang=FI
Thanks for the feedback! I'm using the Lat/Lon coordinates. In the case of no gps device or no gps fix the application shows some fix place in Helsinki. This is the url.
Have you seen this?
To be sure that there is a gps fix try to use another gps application to be sure that gps is working and then open this application and see if it's showing the correct place.
I did some hasty conclusions yesterday, it seems.. Any-hoo: I got it working, sort of: I need to change the colon ( , ) to a comma ( . ) from the coordinates and then it displays the map of my surroundings beautifully ) for some reason it doesn't display the location arrow on the map though..? (when I search the same coordinates in opera manually the arrow is there)
new version is up which corrects the ',' to '.' issue.
Works beautifully (according to the few tests I've had time to do)!
Usability would improve greatly, if there was some sort of GPS status indication: GPS on/off, Lock/no lock and number of satellites tracked..?
updated with a statusbar showing
valid data: sat: number of sats for position|valid|total; altitude
no valid data: no position
Threre is more information like speed and heading which could be useful, too. Let's see if the new info works and then we can see how in terms of gui layout the additional information can be shown!
Btw, does the scale trackbar work for you?
Statusbar works ok, but only after 'refresh'. It would be more useful if it displayed the gps state 'live'. Ie. if there's no lock yet, but it's searching, it would show something like a row of dots scrolling. And after a lock it would display the sat info (This app has something like that for instance: http://forum.xda-developers.com/showthread.php?t=424423). Now I need to hit refresh manually to check if there's a lock or no; at the moment I use google maps to get the sat lock and then I fire up SuomiTracker (awesome name btw to get the topomap.
The scale trackbar isn't working for me either.
I hear this works beautifully in Omnia also; someone commented on it on a Finnish mobile forum :-D
OK. Here we go for a long post, this is the work that came from disassembling glgps daemon and spending quite a few hours/nights driving around to test things. I also drew on my knowledge of GPS systems and used my Bluetooth GPS as a comparison.
The glgps daemon is responsible for communication between the GPS chipset in the SGS and the android userspace. It pulls settings both from NVRAM and some files in /data/gps and /etc. It uses this information to initalize the GPS system at startup and hold it ready to service location requests. This is where all the tweaking that will make a difference regarding GPS output should take place. (If we can get into NVRAM there's more stuff there too.)
I've attached to this post an update.zip with the latest build of the glgps daemon (/vendor/bin/gpsd from nexus s), relocated to /system/bin/gpsd/glgps_samsungJupiter where it sits on the SGS ROMs. I've also included secgps.conf and jupiter.xml, which i've commented with all possible values I could find disassembling it, and the various effects I observed testing them. I also outfitted the jupiter.xml with the most optimal settings I ran into.
A simple breakdown of what I did was to turn off smoothing and interpolation, by using pedestrian mode and a few new variables available in the nexus s daemon. This yields an output as close to what the GPS chip is seeing as possible. It doesn't necessarily mean that it will be more accurate to reality, only that the firmware and daemon won't filter out results that it thinks don't match what it should see. This behavior is more desireable for me than the GPS chip trying to guess, I can be aware of the variations by looking at the accuracy indicator.
[size=+2]How to get logging out of the glgps daemon so you can observe the effects of tweaks, environmental effects, etc. (A.K.A. lets not stab at the dark!)[/size]
1. Root your device
2. adb shell
3. $ su
#
4. cd /system/bin/gpsd
5. mv glgps_samsungJupiter glgps
6. reboot
Now the glgps daemon won't load at startup. After your device reboots, repeat steps 2-4. Then:
7. cp /system/etc/jupiter.xml /sdcard/
8. adb pull /sdcard/jupiter.xml .
9. edit jupiter.xml on your pc as desired.
10. adb push jupiter.xml /sdcard/
11. adb shell
12. su
13. cd /system/bin/gpsd/
14. ./glgps -c /sdcard/jupiter.xml
alternate command line for activating a "job" in glgps:
11. ./glgps -c /sdcard/jupiter.xml jobname <---------- jobname can be anything defined in your jupiter.xml as a job. Examples from mine: normal cold-single-supl freq-aid-test sim-cold-auto. Some jobs will exit immediately after you stop attempting a fix.
Now the glgps will be loaded, and if bPrintToConsole="true" cLogEnabled="true" are both set, you will start seeing debug output in the console. It will indicate the file it is saving log data to, all initialization information, and display info throughout the time you are connected with adb.
To revert glgps back so that it starts again at bootup as normal, rename glgps back to it's original name. It will then continue to load /system/etc/jupiter.xml on the next reboot as normal. (replace this file with your edited one if you want to continue using the settings)
NOTE: Occaisionally i've had the logging verbosity so high that the GPS cannot get a lock at all. To a certain extent you can work around this by adjusting the "niceness" of the process using the program "renice" (which makes it "meaner" giving it a higher priority over other processes (thus more CPU power to work with) - "renice -20 -p $(pidof glgps)" to make it highest priority.
[size=+2]How do I change what goes in the log file (verbosity)?[/size]
<gll LogPriMask="LOG_FLAG | LOG_FLAG2" LogFacMask="LOG_FLAG | LOG_FLAG2" > control this. Possible LOG_FLAGs are as follows, seperated by a | (pipe)
LOG_EMERG | LOG_ALERT | LOG_CRIT | LOG_ERR | LOG_WARNING | LOG_NOTICE | LOG_INFO | LOG_DEBUG | LOG_GLLAPI | LOG_NMEA | LOG_RAWDATA | LOG_ASIC_IO | LOG_RF_DEBUG | LOG_BBTEST | LOG_DEVCV | LOG_DEVET | LOG_DEVJG | LOG_DEVIA | LOG_DEVKF | LOG_DEVMR | LOG_DEVMS | LOG_DEVSP | LOG_DEVDH | LOG_DEVRA | LOG_DEVRS | LOG_DEVVG | LOG_USR1 | LOG_USR2 | LOG_USR3 | LOG_USR4 | LOG_USR5 | LOG_USR6 | LOG_UNITTEST | LOG_DEFAULT
I've documented some of the logging switches in the jupiter.xml comments. Some of these generate HUGE logs. (large enough to use so much I/O and CPU that glgps can't determine your location at all) - be aware that using full verbosity will also probably result in never getting a fix
LOG_DEVVG output: GetSigMeasForClockModel:: SvId 23 Snr 0.000000 mode 1 accepted!
LOG_DEVRA output: GlMeasEng::EnableLowPowerExt(F) GlMechanMgr::UpdateTo12Chan() - Update to 12 full channels AcqMgr::LogAgc() vga_ctrl=0x18 agc=9
LOG_DEVDH output: Raw calculation data (large log)
LOG_DEVMS output: Raw calculation data (large log)
LOG_DEVMR output: #240355D BlndMgr TerminateSearches(2) #240366D BlndMgr(otLstOfSvIdScanNonTrk:686): #240366D BlndMgr(otLstOfSvIdDrillNonTrk:687): #240367D BlndMgr(otSvIdKillLst:691):
LOG_DEVKF output: Fix Data (Lat, Long, Alt, Estimated Accuracy
LOG_DEVIA output: SNR, Latency, Vector, Measurement (large log)
LOG_DEVJG output: Per channel SNR, Latency, Vector, Measurement (large log)
LOG_DEVET output: TCXO calibration data, Doppler calculations (large log)
LOG_DEVCV output: SATAID data, Oscillator data
LOG_DEFAULT output: All on! Realllllllllllllllllly Big!
NOTE: For NMEA output, set LOG_NMEA and also set "GPS Logging" to ON in lbstestmode app. This will generate /sdcard/gps/tracking/NMEA-<DATESTAMP>-<TIMESTAMP>.txt files for each track (from the time you are using the gps til the time you release it) - These .txt files follow the NMEA standard and you can use them to generate tracklogs or do other nifty GPS related things (check out the PC program gpsbabel, for example)
NOTE2: If you want to restart the glgps daemon on the fly, to load new jupiter.xml settings for testing, open a concurrent adb shell connection in root, and type: "kill $(pidof glgps)" this will kill the glgps daemon in the other shell window and you can restart it with a new jupiter.xml
[size=+2]Sample output from logging:[/size]
Code:
H187754I OpenFifo: Opened "/data/gps/glgpsctrl"
H187765I Certificate Path : /system/bin/gpsd/
H187765I TLS enable = 1
H187768I Certificate Path : /system/bin/gpsd/
H187768I TLS enable = 1
H187768I LBS_A: starting event handler
H187768I LBS_I: ASN1 manager: 1237d4, 2044 bytes
H187768I LBS_I: Encode/decode buffer: 123fd4, 6120 bytes
H187768I LBS_I: Dynamic memory buffer: 1257bc, 24480 bytes
H187769I LBS_I: @(#)Broadcom LBS ver. 2.1.0.0 86303, 2010/Nov/07, 13:12:55
H187769I LBS_I: API: gllbs_init(32768)
H187769I LBS_I: CB: nv_open
H187769I LBS_I: CB: nv_read
H187769I LBS_I: CB: nv_close
H187769I LBS_I: 3 cells loaded
Take a look at my provided jupiter.xml for more info on the possible parameters. I've documented it as I went along with comments. I'll update the 2nd post here with more info soon.
[size=+3]Attached file[/size]: CWM update.zip with new glgps daemon from nexus s, jupiter.xml with pedestrian mode settings
NOTE: CWM update.zips will not work in eclair, you must change the following:
Code:
gpioNStdbyPath="/sys/class/sec/gps/GPS_PWR_EN/value"
gpioNResetPath="/sys/class/sec/gps/GPS_nRST/value"
to:
Code:
gpioNStdbyPath="/sys/class/gpio/gpio121/value"
gpioNResetPath="/sys/class/gpio/gpio120/value"
[size=+2]Notable Settings[/size]:
<hal acEEDir="/data/gps/" acEEFileName="xtra.bin" /> : Defines an Extended Ephemeris file for the glgps daemon to load for AGPS data. The drivers normally do not appear to download this file successfully and the daemon says it is corrupt.
<hal bPrintToConsole="true" cLogEnabled="false acLogDirectory="/sdcard/gps/log"" /> : Determines of the logging output should be printed to console and/or to a text file. The text file will be placed in the directory provided and named gl-<TIMESTAMP>.txt. Inside will be the logging output at the verbosity you defined using LOG_FLAGs in <gll LogPriMask="LOG_FLAG | LOG_FLAG2" LogFacMask="LOG_FLAG | LOG_FLAG2" >
<hal arp-supl-enable="true" arp-supl-cap-msb="true" arp-supl-cap-msa="false" arp-supl-cap-ecid="true" arp-supl-reaiding-time-sec = "600" /> : These settings tell the glgps daemon what the SUPL AGPS server provided next is capable of. MS-B means Mobile Station Based, MS-A is Mobile Station Assisted, ECID is unknown. Reaiding time defines the minimum amount of time before attempting to re-inject AGPS data to keep the fix tight in seconds.
<hal acSuplServer="h-slp.mnc410.mcc310.pub.3gppnetwork.org" SuplPort="7275" tlsCertPath="/system/bin/gpsd/" /> : This defines the AGPS server to use for SUPL data (only used if enhanced-assisted="true") - if cp-enhanced-assisted="true" is set, will use the providers control plane rather than normal packet data to access SUPL server. Note that the provided SUPL server is AT&T's SUPL server, which is only accessible within their network. Use google's if you are not on AT&T's network. tlsCertPath defines the location in the filesystem to search for SSL certificates used when connecting to the AGPS server. Most ROMs come with AT&T's, if yours doesn't have it, you'll need to add it for the connection to work.
<hal LbsEnable="true" LbsLocal="true" LbsServer="bcmls2.glpals.com" LbsPort="7275" LbsSyncTimeSec = "60" LbsSyncLto="true" LbsSyncCells="true" /> : These settings tell the glgps daemon to use this server for LBS aiding (Location Based Services.) When LbsLocal is true, the glgps daemon will record all cell sites it sees and your reported GPS location at the time. Any future fix attempt will use these coordinates to seed your fix if the current cell tower you are on matches one the glgps daemon has seen before. This data is stored by default in /data/gps/, so note that it will get erased if you clear the /data partition. It might be useful for frequent flashers to modify the jupiter.xml to store data in /sdard/gps/ or some other less volatile location instead, so the local cell db gets a chance to populate.
<gll CNoSmoothEnable="true" > : This disables some of the glgps daemon's internal smoothing algorithms, makes the GPS a little more accurate to its readings. POSSIBLE VALUES: true false
<gll DynMode="DYN_PEDESTRIAN" > : Defaults to automatic mode which makes the glgps daemon determine on the fly if you are on foot or in a vehicle. This affects the interpolation algorithms used (In GPS land, pedestrian mode means the GPS will report each fix it gets, usually 1 per second.) Vehicle mode will not report movement under a certain amount (usually 3-5 meters) in order to keep the indicator more "stable" POSSIBLE VALUES: DYN_AUTOMATIC DYN_PEDESTRIAN DYN_VEHICLE
<gll RfAtt="GL_RF_ATT_DISABLED" > : I haven't tested this enough to be sure if the chip actually has a built in attenuator you can adjust with this parameter, but if so, it goes all the way up to 18dB. The function of an attenuator is to lower the overall incoming signal in order to better compensate for enviornmental noise. Cordless phones, WiFi, Microwaves, and any number of devices work on frequencies close enough to GPS to cause interference. Assuming there is an attenuation circuit present and it's controllable via this parameter, it will yield better performance for various people in various situations. Requires testing
<gll RfType="GL_RF_4751_DANUBE" > : GL_RF_4751_BLUEFIN GL_RF_4751_DANUBE GL_RF_4751_DANUBE_EXT_LNA are values that I have tested working with our GPS. _EXT_LNA comes default on Nexus S, DANUBE default on ours. BLUEFIN I haven't seen set anywhere, but does work. Danube and Bluefin are likely different revisions of the 4751 chipset.
[size=+2]Other settings not found in jupiter.xml[/size]
glgps also seems to heed what the user has set in Settings -> Location and Security, for "Use wireless networks" and "Use sensor aiding". Wireless networks causes nearby WiFi access point info to be used for a faster first fix, and Use sensor aiding attempts to save power by putting the GPS in low power mode when it sees you moving in a straight line, and shutting off entirely when the accelerometer detects that the phone is stationary. This can cause issues when the compass or accelerometer are providing false values (due to interference, mismatched kernel, etc.)
Also, glgps reads settings from NVRAM that are set by the lbstestmode app. These settings are also stored in secgps.conf, but the settings in NVRAM do NOT necessarily match up. Make sure you set your lbstestmode to "standalone" operation so that Android relies on the glgps daemon for AGPS support. My settings are:
Code:
Session Type: Tracking
Test Mode: S/W
Operation Mode: Standalone
Start Mode: Hot Start
GPS Plus: ON
Dynamic Accuracy: ON
Accuracy: 80
GPS Logging: OFF (use ON and LOG_NMEA to get NMEA logs)
Server FQDN Type: Custom Config
Server: h-slp.mnc410.mcc310.pub.3gppnetwork.org <MATCH THIS WITH YOUR JUPITER.XML>
Server Port: 7275 <MATCH THIS WITH YOUR JUPITER.XML>
SUPL Secure Socket: ON <VARIES WITH SERVER, GOOGLE IS OFF>
AGPS Mode: SUPL <OR CONTROL PLANE, MATCH WITH JUPITER.XML>
[SIZE=+3]To summarize the problem i've identified with our GPS so far:[/SIZE]
AGPS was not properly deployed at the factory, or in any of the updates pushed to the Captivate. Only Control Plane AGPS mode is properly configured, but not active by default. As a result, out of the box, the phone is essentially always in standalone mode regardless of settings (without a modified jupiter.xml)
The GPS chip appears to be receiving some kind of interference from other component(s) on the mainboard. This appears to only manifest itself when the handset is under a heavy usage pattern (such as G Maps/G My Tracks plotting your position, scrolling the map, using cell data, reading gps). This interference is causing the GPS chip to have a major drop in performance. I suspect the phones that don't experience this have an exceptional unit that can perform regardless of this interference (I suspect if they tested with raw signal strength showing, the drop would show)
The glgps daemon attempts to do post processing on the data received in the stream from the GPS chip. Because the data received is generally already incorrect, this further compounds the issue. My jupiter.xml already has these post processing algorithms disabled.
That drop in GPS signal due to interference is the kicker. I haven't yet narrowed down the exact cause of the interference, but suspects are:
1.) Cellular Radio - if this is the case, testing with wifi on and the cell radio off should yield a more desireable result (although hard to test while moving in that situation without another device to tether to for mobile data)
2.) CPU Usage on Host CPU - I don't think this is the case. The only CPU intensive thing that runs on the Host CPU is the glgps daemon, and if this were the case, "renice -20 -p $(pidof glgps_samsungJupiter)" would fix the problem. It does not.
3.) GPU usage - This is a possibility.
4.) CPU usage on baseband CPU - There are also some GPS functions handled in the baseband. I doubt this is the cause but possible.
5.) EM leakage from other system components - I'm leaning towards this right now. I'll have to open up the captivate and throw an EM shield over the GPS chip and see what the results are.
reserved for more two
Sweet! Trying this out now. Will post results. Thanks Da_g
Been watching the progress on this lately and have to say big props on all the research. Will try it out and see how it goes
Sent from my SAMSUNG-SGH-I897 using XDA App
I'll try it and see how well it does when I get home from work..
Mac
So just install it through CWM?
Yes, the attached zip is a CWM zip. Note that these settings are only what I found optimum, and as this is the development forum, I encourage you to tinker with the possible values (commented inside the jupiter.xml) to figure out what works best for you
Just walked from inside heavy building to outside...after 10 Seconds I had a full lock while walking showing 5m distance...holy [email protected]$#& s&$#$ that is already amazing. I'll use it driving home after work....mad props
Sent from my SAMSUNG-SGH-I897 using XDA App
Da_G said:
<hal acSuplServer="h-slp.mnc410.mcc310.pub.3gppnetwork.org" SuplPort="7275" tlsCertPath="/system/bin/gpsd/" /> : This defines the AGPS server to use for SUPL data (only used if enhanced-assisted="true") - if cp-enhanced-assisted="true" is set, will use the providers control plane rather than normal packet data to access SUPL server. Note that the provided SUPL server is AT&T's SUPL server, which is only accessible within their network. Use google's if you are not on AT&T's network. tlsCertPath defines the location in the filesystem to search for SSL certificates used when connecting to the AGPS server. Most ROMs come with AT&T's, if yours doesn't have it, you'll need to add it for the connection to work.
Click to expand...
Click to collapse
So can I change this before flashing the rom? if so, how? is it possible you can push a "AT&T" version and a "Google" version?
Sure, you can edit the file /system/etc/jupiter.xml in the zip before flashing it to the device. I'll make one with settings for google and control plane and post them in a sec.
Da_G said:
Sure, you can edit the file /system/etc/jupiter.xml in the zip before flashing it to the device. I'll make one with settings for google and control plane and post them in a sec.
Click to expand...
Click to collapse
given i'm in Australia, is there any value at all to changing my ntp servers to local ones (0.au.pool.ntp.org) as opposed to US ones?
Edit I'm posting to slow lol
Sent from my SAMSUNG-SGH-I897 using XDA App
I would soooo try this out right now if I was not overseas atm. It'll be 3 weeks before I can try this out but to Da_G thank you for doing something that Samsung should be working on the most!
Ok, updated first post with AT&T, Google, and Control Plane versions. Control Plane should work on any cellular provider (if they have implemented it, which all should have)
Regarding changing the NTP server that can't hurt, but should only affect the TTFF (Time To First Fix) as it should sync up to the GPS satellites after that.
Da_G said:
Ok, updated first post with AT&T, Google, and Control Plane versions. Control Plane should work on any cellular provider (if they have implemented it, which all should have)
Click to expand...
Click to collapse
Is there any value of Control Plane vs Google SUPL? should one be "better" than the other?
Da_G said:
Regarding changing the NTP server that can't hurt, but should only affect the TTFF (Time To First Fix) as it should sync up to the GPS satellites after that.
Click to expand...
Click to collapse
Cool. Didn't quite understand how it was used in relation to GPS.
Is there a rough laymans terms of why having WIFI on (and connected to an AP) leads to far more accurate results faster, when its a new AP that i've not connected to before? I was thinking it might have something to do with Time Servers and Latency (as latency to an NTP would be *dramatically* lower over Wifi VS any form of cellular comms) - given your explanation re NTP, I don't think thats the case now.
It certainly can't be "google knows where the AP's are", given that I work in IT Services and create/delete/move AP's all the time.
In the case of AGPS, your current CellID, along with MNC and MCC are sent to the database (your cell providers control plane server, google, or any other SUPL server provided in jupiter.xml) in order to obtain approximate Latitude/Longitude for an initial fix. (due to the nature of GPS, having an initial "guess" as to your current location helps to seed a faster initial fix, which is the main function of AGPS) The reason your Cellular Provider's database could be better is that it is more likely to be up to date than googles. But of course this varies! Some providers don't even maintain a CP server for AGPS.
The reason WiFi helps the time to first fix is similar. Google actually does have your phone report its visible APs (by MAC address) and current best-guess location to its servers. Everyone else's does this too (assuming they have the wireless tick box on) - This allows them to build a large database with which to seed AGPS from. You may have noticed the first time you turn on "Use wireless networks" in Settings - Location and Security, you get a boilerplate disclaimer about allowing google to collect anonymous connection data. That's what this is for
Adding some info to the first post about "Use sensor aiding" and "Use wireless networks" now.
Da_G said:
In the case of AGPS, your current CellID, along with MNC and MCC are sent to the database (your cell providers control plane server, google, or any other SUPL server provided in jupiter.xml) in order to obtain approximate Latitude/Longitude for an initial fix. (due to the nature of GPS, having an initial "guess" as to your current location helps to seed a faster initial fix, which is the main function of AGPS) The reason your Cellular Provider's database could be better is that it is more likely to be up to date than googles. But of course this varies! Some providers don't even maintain a CP server for AGPS.
The reason WiFi helps the time to first fix is similar. Google actually does have your phone report its visible APs (by MAC address) and current best-guess location to its servers. Everyone else's does this too (assuming they have the wireless tick box on) - This allows them to build a large database with which to seed AGPS from. You may have noticed the first time you turn on "Use wireless networks" in Settings - Location and Security, you get a boilerplate disclaimer about allowing google to collect anonymous connection data. That's what this is for
Adding some info to the first post about "Use sensor aiding" and "Use wireless networks" now.
Click to expand...
Click to collapse
Pardon my ignorance...but does this mean after the initial boot with google it is no longer needed to have wi-fi on to get good locks ?
Mac
With stock settings (JF6/JH7), all the aiding data was not saved, but with the proper settings in jupiter.xml, aiding data should be saved into /data/gps and NVRAM so that the GPS chip can use it on the next fixes. This data is only good for a short period of time (hours to days) so unless you are using the GPS that frequently, WiFi on is still beneficial. You only need to have it on at the time you get the first fix, after that you can shut it off.
Da_G said:
With stock settings (JF6/JH7), all the aiding data was not saved, but with the proper settings in jupiter.xml, aiding data should be saved into /data/gps and NVRAM so that the GPS chip can use it on the next fixes. This data is only good for a short period of time (hours to days) so unless you are using the GPS that frequently, WiFi on is still beneficial. You only need to have it on at the time you get the first fix, after that you can shut it off.
Click to expand...
Click to collapse
Cool...thanks for that detailed explaination
Mac
Anyone else noticed with the diagnosis icon as a short cut if you have been in the menu i was asked earlier to update it in the marketplace ?
Nothing has changed as far as i can see in the diagnosis menu, nor lost any functionality or gained any, I'm not even thinking "this was an update, before any random comments" i'm just pondering and wondering if anyone else had this yet ?
I've got the icon, but no updates as yet...
mwako said:
Anyone else noticed with the diagnosis icon as a short cut if you have been in the menu i was asked earlier to update it in the marketplace ?
Nothing has changed as far as i can see in the diagnosis menu, nor lost any functionality or gained any, I'm not even thinking "this was an update, before any random comments" i'm just pondering and wondering if anyone else had this yet ?
Click to expand...
Click to collapse
Had it through as well - didn't notice any new additions or removals from what's already there.
Update: When inputting the codes (i.e. *#0002*28345#) the phone now vibrates whereas it didn't before
skeet94 said:
Had it through as well - didn't notice any new additions or removals from what's already there.
Update: When inputting the codes (i.e. *#0002*28345#) the phone now vibrates whereas it didn't before
Click to expand...
Click to collapse
Can't believe i didn't notice that , I remember now thinking it was an odd feel before when it didn't vibrate inputing the codes, after every other touch/input/exit on the device makes it vibrate, Seems they are doing something then. Lets see if anyone finds any new interesting menus inside ?
The "root menu" doesn't work any more it seems. I don't quite recall the command since I always check the Focus threads.
Updated Service Codes
We have extracted about 90% of the Service Codes from the latest Version I have downloaded. So far, not much in additional options. Maybe some changes in the old ones. Needs to be checked. There are again, some dead codes which are not referenced, so this is normal and not a wrong code from me.
The most interesting codes run a check before they start. If the conditions do not apply, the diag function will not start.
This would be
TESTMODE <--Root
AUDIOGAINCONTROL <-- What a shame as I still need to tweak the Volume on Level 1/30. Which should play more this Level.
(Yes I know, I have tweaked the Sound Tuning options)
The App runs a functions called "check cable" and this one calls "JIG_UART"
This function checks for two conditions. Unfortunately just some numbers, which cannot be explained because of a number code only..
This seems to be a Service Cable, as I was not able to run those codes, even when changed from USB to UART in the menu. So lets get an UART cable
If the UART Service Cable is not needed, maybe someone else finds out...
There are also two commands which check a registry value from the phone, and start not for me:
FTAMAIN
VIEWHISTORYNW
So far I have seen only the following new ones:
SerialNumber --> Starts but does not show anything
TFlashUnPairing --> Starts but have not tested it. I don't need to know everything
Some Menu Item was deleted, forgot which ones...
I have attached the Commands and the Hash table. It does not make sense to transfer every hash code, because most of them are already resolved.
I explain how to resolve it, in case you want to try one:
As an example I have chosen the SMDINFO (Open the TXT file)command, because it has only 5 digits:
The first Number: (4) Tells you the length of the code. Because we use 0 too, this code has 5 positions:
Next to the number in the brackets, is the number you put into the DiagApp Tool, starting from the last. Because SMDINFO shows, you only two of them in the same line, you just continue downwards. You can also use the search option:
This results in:
*#03#
Again you look for the numbers next to the numbers in the brackets. So you need to find the numbers for:
(4) (3) (2) (1) (0)
(4) (3) are easy, on the same line... the looks for the next (2), which can be found under: DisableSellOutSMS If you are unsure, use search...
Its easier as it sounds...
If I find anything new and useful, I will let you know...
Let me know any interesting file to disassemble. The is always more then the eye can catch.. At least with a debug guru in the team...
MC
mchabr said:
The most interesting codes run a check before they start. If the conditions do not apply, the diag function will not start.
This would be
TESTMODE <--Root
Click to expand...
Click to collapse
I guess the well known workaound, will result in the same root access.
*#1111# continue to press any number, until the long number at the top gets a minus symbol. Then just press back, until you jump into the main menu.
*****************************
Please note: this is the OLD VERSION THAT IS ATTACHED TO THIS POST. THE NEW VERSION IS AVAILABLE AT:
www.gundersoft.com/pages/downloads/caesura
******************************
***********************************************************
* Agreement:
***********************************************************
Firstly, I want to start out by saying that I have put a lot of hard work into making this app and I am trying to make it free so I would appreciate it if we can keep all criticism on this forum strictly constructive. At the moment, it is a BETA and probably has LOTS of bugs (but I am not aware of them). That is where YOU come in. Anybody who is interested may come download this app in BETA and give me feedback and test it and tell me what I can add/remove/fix. I will hopefully be releasing a final release version this month. Its all up to u how successful it is
I had a lot of free time this month so I have started building an app for android. What is Caesura exactly? Hard question to answer. Its a tool box for those who want to remotely control every aspect of their precious phone, even when out of 3G, or its a way for parents to protect unruly children from danger. So far it can be used for all of the following:
Remote Control Phone Via Text Message
Remotely Block Phone Numbers (for your kids phones)
Get Phone status (battery life, wifi, unread messages)
Remotely send text messages
Forward Texts
Find lost phones by turning volume ALL the way up and ringing, vibrating, and flashing the flash.
In the future I also plan to give it these features:
Ability to track lost phones via GPS and Cell towers
Remote Wipe data capability
Remote Lockout
Remote Password Change
Remote Play Sound (Fun for the occasional prank )
And for those with unruly children:
Sms Alerts anytime the phone leaves its current location
Sms Alerts anytime the owner of the phone exceeds a certain speed limit
What I really need are BETA testers. Anyone interested is welcome to download the APK which is attached to this post. Tell me what u think.
Instructions:
Download the APK from www.gundersoft.com/pages/downloads/caesura and install. Next, the first thing that you DEFINITELY want to do is open the APP and press the menu button, and select Settings. In the settings screen, Press the Set Password button and set a password. Also, insure that the "Require password" checkbox is checked.
Then, on the main screen, check the Enable Service checkbox.
Now, to remote control the phone, either install the APP on another phone and use the "Login to Another Phone" button on the main screen, or send the following Sms to the phone WITH CAESURA that you wish to control:
!login
The phone will then prompt you for a password. At this point, you may reply with a password. If you enter a correct password, you will be granted access.
At this point you can send any of the following commands and the phone will treat them as instruction for what to do:
Please note: any texts send while logged in will be sent as commands and will not reach the remote phone's inbox. Do not forget to run the exit command every time you finish.:
!login - first command to be sent. Logs you in.
password [new password] -sets the password for logging into Caesura.
exit - logs out of the service. ALWAYS do this. you cannot log in from another phone while that phone is still logged in.
toast [text to display] - shows a tiny toast window with some text in it for about 4 seconds
sendsms [number] [message] - remote control the phone to send text message to the specified number
torch - toggle system flashlight
panic - sets volume to high and flashes light and displays custom message on screen (BUGGY, causes app to crash if done repeatedly. Work in progress!)
help [command] - gives specific help for the specified command - (Not available for most commands yet)
status - tells the number of unread msgs, remaining battery life, and whether wifi is on or off
unlock - if the lockscreen of the phone is showing, hides it and unlocks the keys
block [number] - blocks the phone from getting texts from the specified number (WORKS!!)
unblock [number] - unblocks number
blocked - sends a list of numbers that you have blocked
forwardto [number] - sets the number to which all forwarded texts will be sent to
forward [number] - forward texts from a number
unforward [number] - stop forwarding texts from this number
forwarded - sends a list of numbers that you are forwarding
Console:
To remote control the device from within another copy of the APP itself, press the "Login to Another Phone" button on the main screen. This open a window that will ask you for a phone number. Type in the number and the phone will attempt to send a login text message to the phone in question. If successful, you will receive a message in return. To select a command, choose it from the drop down list. Click send. Wait a few, (it can be up to a few minutes if your carrier is slow but took only about 3-10 sec. on AT&T) and you will get a response.
ALWAYS SEND EXIT WHEN YOU ARE DONE OR YOU WILL NOT BE ABLE TO SEND TEXTS TO THAT PHONE THAT IS BEING CONTROLLED!!
License:
In the process of compiling a license...at the moment, just think to yourself, if it seems dishonest or sneaky, its probably going to be against the EULA
No reverse engineering
No reposting on other forums or threads. You are welcome to post a link here, but I wish to insure that all users get the NEWEST possible copy since Im constantly updating it
I release myself from all liability involving this software since it is provided as a free software and I do not offer any guarantees of any sort regarding its soundness, or even that it is fit for a particular purpose.
All abuses of this software are the sole responsibility of the End User.
And with no further ado... good luck and tell me what you think
*****************************
Please note: this is the OLD VERSION THAT IS ATTACHED TO THIS POST. THE NEW VERSION IS AVAILABLE AT:
www.gundersoft.com/pages/downloads/caesura
******************************
**Also, this list does NOT contain all of the commands added since the update.
Reserved
always good to save space for expansion
Looks interesting. I'll try it out.
Edit: Kind of forgot my service is turned off.
Sent from my LG Optimus V using Tapatalk
Sounds good so far, I'd suggest to produce a version that can be installed to system partition (for rooted devices) and stores its settings somewhere in a safe place (possibly system partition as well) so it gets factory reset proof. Also it should have a simchecker option so the owner of the device gets a notification if a new sim is inserted. This way it would always be possible to find and remote your device, even if a thief performs a fr and formats the sdcard.
Hope this is not too much to request, but i think this would make it the ultimate anti theft tool.
--------------------------
tapatalked from vizio vtab1008
Will be trying this as soon as I have time(which might be long,but just sayin').Sounds reaaaaally good.
And because I see potential in this,lemme give you an idea.
There are far too many tools with which you can control (Parts of or the whole of) your PC from your phone,but for the opposite there is nearly nothing.The only app I found that allows for remote control of the phone from a PC is Webkey which,while good in its essence,isn't exactly useful.And it does everything over wi-fi only(Not bad for most but anyway).
So,an app that allows remote control of the phone from a PC in a proper manner is more than welcome and I'm willing to pay for it.
*I know Caesura allows for texting remotely etc,but I'm referring to real remote control,where you can use the phone as if you held it with your hand or something*
No matter if you do it or not in the end,I want to congratulate you for the effort.
tolis626 said:
Will be trying this as soon as I have time(which might be long,but just sayin').Sounds reaaaaally good.
And because I see potential in this,lemme give you an idea.
There are far too many tools with which you can control (Parts of or the whole of) your PC from your phone,but for the opposite there is nearly nothing.The only app I found that allows for remote control of the phone from a PC is Webkey which,while good in its essence,isn't exactly useful.And it does everything over wi-fi only(Not bad for most but anyway).
So,an app that allows remote control of the phone from a PC in a proper manner is more than welcome and I'm willing to pay for it.
*I know Caesura allows for texting remotely etc,but I'm referring to real remote control,where you can use the phone as if you held it with your hand or something*
No matter if you do it or not in the end,I want to congratulate you for the effort.
Click to expand...
Click to collapse
There is Droid Explorer, it has a screencast option to do this, but you need to be connected to USB.
--------------------------
tapatalked from vizio vtab1008
I came across this by using the search for a remote app on lost devices. Will get myself a copy of the apk, you still need testers? ^^
I think this was abandoned... j use 'android lost' instead, has the same functionality...
----------------------------------------
tapatalked from GalaxyS
This has not been abandoned. You can download it from www.gundersoft.com/pages/downloads/caesura
I still need testers. It's not the same as the other app...it has quite a few more features.
Sent from my MB860 using XDA App
if i undersand it right caesuara will send you my numbers and give you the capability to connect to my phone is that right?
If yes why should i use it?
If i missunderstand i am sorry for asking stupid questions *grin
Sent from my HTC Desire HD using XDA App
It sends phone number only (for usage tracking by area code...this is a beta thing only). Also, if you set a login password, no one but you can connect.
The only command that can be run without password is factory lockout. Let's say user abuses software and I am contacted by law enforcement: I can disable caesura remotely. That is all.
I've never released this app publicly and I was scared to death it would be misused and I'd be liable. See, all of my beta testers locally have been teens, and they have a way of using this stuff immaturely. This my way to cover my butt just in case
Sent from my MB860 using XDA App
And no worries, if I really had any malicious intentions, I wouldn't have told you about the phone number thing would I?
Sent from my MB860 using XDA App
Hey guys,
I spent all night trying to reenable USB on my device. Rebellos and I have been designing bootloaders and screwing with settings which are not normally accessed. So somehow I put my device into MODEM mode so it would try to connect to the computer as a data device instead of a camera/phone. I was seriously thinking my device was borked because I've been working inside it... and while it's a Samsung, it's not totally bulletproof.... So, to make matters worse, some asshole posted an invalid hidden code all over the internet to access factory mode on the Galaxy Camera.
Here's how you access factory mode and change your device between a normal camera and modem. Every other guide on the internet is wrong.
1. Install Nova Launcher from the market
2. hold on the launcher screen until a menu pops up.
3. select shortcuts
4. select Activities
5. select Factory Mode
6. Select Factory Mode FactoryCTRL
7. launch the Factory Mode shortcut you just created
8. use this thread http://forum.xda-developers.com/showthread.php?t=1894102 to locate codes for your device.
I fixed my device with the *#7284# -- Phone Utility (USB Settings) code. Both should be set to PDA.
This technique should work for EVERY device. The codes will vary, but you should be able to access factory modes.
This is very useful information!
I don't see the thanks button.
But anyway, any luck on getting the device to make / receive calls / texts? Or print money at least?
Thank you.
Nevermind....not reading through
AdamOutler said:
Hey guys,
I spent all night trying to reenable USB on my device. Rebellos and I have been designing bootloaders and screwing with settings which are not normally accessed. So somehow I put my device into MODEM mode so it would try to connect to the computer as a data device instead of a camera/phone. I was seriously thinking my device was borked because I've been working inside it... and while it's a Samsung, it's not totally bulletproof.... So, to make matters worse, some asshole posted an invalid hidden code all over the internet to access factory mode on the Galaxy Camera.
Here's how you access factory mode and change your device between a normal camera and modem. Every other guide on the internet is wrong.
1. Install Nova Launcher from the market
2. hold on the launcher screen until a menu pops up.
3. select shortcuts
4. select Activities
5. select Factory Mode
6. Select Factory Mode FactoryCTRL
7. launch the Factory Mode shortcut you just created
8. use this thread http://forum.xda-developers.com/showthread.php?t=1894102 to locate codes for your device.
I fixed my device with the *#7284# -- Phone Utility (USB Settings) code. Both should be set to PDA.
This technique should work for EVERY device. The codes will vary, but you should be able to access factory modes.
Click to expand...
Click to collapse
So why or what is the reason for factory mode? In other words, what do we gain by doing this?
what purpose ?
"I fixed my device with the *#7284# -- Phone Utility (USB Settings) code. Both should be set to PDA. "
Sounds feasable to me to at least have the option available
Nice and TKS
ijof9 said:
I don't see the thanks button.
But anyway, any luck on getting the device to make / receive calls / texts? Or print money at least?
Thank you.
Click to expand...
Click to collapse
LOL .... Print Money !! LOL:laugh:
Ir0nsh007er said:
LOL .... Print Money !! LOL:laugh:
Click to expand...
Click to collapse
thanks so much
Hiya, just curious:
Are you using Nova Launcher just to get access to a dialler?
Thank you.... still can't see a USB mode though
Hi,
New member here and I want to thank you for the link for the code and the tip on using Nova to unlock more stuff from the SGC.
I did what you instructed above but saw that my device already had PDA chosen by default and I still can't see the USB Utilities on my Settings window, nor can I move apps from device to SD.
My SGC only has a few apps installed beyond the factory installed ones. Probably 5 utility and browser apps and about 10 games (kiddie ones like Angry Birds, Cut the Rope, Minecraft) etc. and it's already running out of device storage space.
Is it possible to have the enable USB mode? Thanks
davidleetong said:
My SGC only has a few apps installed beyond the factory installed ones. Probably 5 utility and browser apps and about 10 games (kiddie ones like Angry Birds, Cut the Rope, Minecraft) etc. and it's already running out of device storage space.
Is it possible to have the enable USB mode? Thanks
Click to expand...
Click to collapse
use GL to SD
the code via calculator works in getting into factory mode..
If the connected Camera is listed as being in MODEM mode, you should also be able to connect to it via terminal and using AT commands to set factory mode and available windows "ports". (MODEM, PHONE/PDA, etc.) These AT commands are (modem firmware) device dependent... So unless someone tell me the BP/CP chip used in this device (or send me the modem.bin), I can't tell you which AT commands to use.
=================== update ===================
I've found that they use the XMM 6260 as detailed in the THIS post. So If you're very brave in experimenting with these connections, you may want to look into this command:
Code:
AT+XSIO -- Configuration trace and modem (AT) interfaces
[ ONLY do this if you are not afraid of loosing PC connection to Camera! ]
This was a VERY useful post! Thanks! :good:
sorry to revive an old thread, but it seems my GC keeps going back to MODEM mode after a second soft reset. Is there any way to fix this?
thanks in advance,
Great information! Thanks for sharing.
I get a Galaxy NX for 310€ i think for this Price i can try it, when i dont like it's a nice Present for my Girlfriend.... First i try i think nice Android Device nice Display but not a comparison to my Canon 5D in the Night i install some Apps like Cinema FV-5....guys i now nobody intrested in this Device but it's realy Outstanding as a Videographer this is the best ****ing DSLR ive ever seen buying expensive Wireless Microphones? no more i use Bluetooth Video Recording with very high Bitrates ...byebye external Atomos Recorder! Have anyone here an Idea to get Android 5 or a Way to install a modified Camera App that can Record Raw Video or how i can recognize a HD for external Recording or a soundcard over the USB Jack? I dont found anything about this ****ing Dream Thing (((
Thanks !
Great info