How does Google Maps know my position? - c++

I have a nokia 5500 sport mobile phone, and I found after i installed google map, it can automatically locate to my current position.
and I want to know how google map get my position and mark it on the map ?
How can I programming implement this feature with symbian C++(nokia 5500 's operate system is Symbian 3rd).

This is one of those questions where you need to know the jargon in order to find the answer. The magic word is "Location API".
Using it, I found this: http://wiki.forum.nokia.com/index.php/Google_Maps_using_Location_Api_in_Symbian
For mobile devices, a location API sometimes more or less hides the details of how the location is actually discovered, and just tells the app where you are. If the phone has GPS, it will use that. Otherwise, the phone network will help it out - it might calculate based on distance and/or direction to one or more base stations, or it might just say "sorry, I can't be very accurate, but I know you're in this cell, so you must be with a few hundred yards of the base station (city cells), or a few of miles of it (rural cells)".
The API used on the page I link to seems to be specifically GPS. Not sure whether it exists on non-GPS handsets, but if you poke around the Symbian docs long enough you can probably find an alternate location API.

The Nokia 5500 does not have GPS, and the location API does not support network positioning on S60 3rd edition fp1 (at least I'm pretty certain of that - and I should be as I was working with LBS applications on Symbian when the 5500 was released.) Also network positioning require operator/carrier support and very few operators have that enabled in their network.
What Google maps does on every device without GPS is that it sends the ID of the current cell tower to a server that knows where all(?) cell towers are, and does and educated guess at how far from that tower you are. This is both on Symbian and on Java ME devices.
Better positioning in google maps is possible with a built in GPS. The Nokia Location API also supports external BT GPSes which was all that was available when the API was released.

It doesn't have GPS, so my guess is it communicates with different antennas of your GSM provider and triangulates its position using the coordinates of these antennas.

It's possible your phone has GPS - even if it doesn't, it can triangulate based upon cell towers. Programmatically, you'll have to register # Nokia (free, IIRC), get the symbian docs and have at it.
Good luck, GPS is fun (and maddening)
See this post for symbian queries, answers and complaints Should I learn how to develop on Symbian OS?

The W3C have a draft standard for geolocation in JavaScript, which would mean one piece of geolocation code would make your website geolocation work with all mobiles. So far it's supported by Safari on iPhone and Google Android phones. We should all petition Nokia to support it in Symbian phones.

Related

How to discover the machine location with Qt5

Windows has this feature where you can set the (physical) location of your machine.
Say you bought your computer in England and then moved to the United States. You can then go to "Region and Language" and change your location to match the physical one.
In a project I'm currently working on, there is the need of using this feature to show some different content.
First we tried using QLocale::country() for such. But then we realized that this method was fetching the information from the format (image below) rather than from the location.
Using Windows API's GetUserGeoID() we were able to achieve it. But since this application will be ported to Linux in the near future, I want to know: Is it possible to fetch this information using Qt only?

Using a STM upsd3200 series mcu for the first time

I've received a dk 3200 kit recently. I know it's old but I would like to start using it to have more of a challenge than just arduino. It came with the board, an st flashlink FL-101B and some cables. I do not have the install disc, but I found the software for psd soft express online. It doesn't work with current windows 7 64bit. If I could use my arduino to program it, that would be great! Or maybe just do it through USB or the parallel ports? I've read that st provides a stm32 library used to help make code. If that works for my mcu, I'll use that.
Thanks
ST is a company that loves to re-organize their website and break links, but a data sheet for a part of what seems to be the same family as on your board is available from a toolchain vendor at:
http://www.keil.com/dd/docs/datashts/st/upsd321x_ds.pdf
On page 118 this seems to indicate that programs can be loaded using JTAG In System Configuration commands, which may be somewhat standardized though quick searching isn't producing a lot of leads. A reference is also made to ST's AN1153 which would be worth trying to locate a copy of, however it's not entirely clear if that will say anything about the programming, or if it only covers the additional two optional signals which have been added for hardware acceleration of the interface.
In theory, if you can find sufficient information about this device (looking at related devices may provide clues) then you should be able to craft a programming from an Arduino or anything else that can be adapted to twiddle bits at the appropriate voltage/threshold levels.
In practice, you may be better off trying to find an old Windows XP box, or even trying to run that software on a virtual/emulated environment and trap the I/O access either to proxy or to figure out what it is doing and reverse engineer your own programmer.
But unless you have a large installed base of boards using these chips, or particular need some unusual feature of them (I thought I saw something about a built-in CPLD?) it's really not going to be worth the effort.

Mobile locator using cellphone number?

I want to know if it is possible to get the current location of mobile phone using mobile number . Can you suggest me any algorithm. I want to create a web service and integrate it with Google maps.
No, this isn't possible. Even for the carriers, it isn't possible to get GPS-based coordinates for an arbitrary device referenced by phone number, for obvious privacy reasons.
You need software on the device to report the location. At that point, you might as well use some pre-existing software, such as Google Latitude (for Android). There are many solutions out there.

starting smartcard programming

How could one get started with smartcards programming? I am asking here about all the toolkit he needs in order to get started: books, tutorials, hardware etc.
I am planning in playing around with a couple of smartcards programmers and I am pretty new to this field.
Edit: I am mostly interested in programmers that play nice with Unix-like operating systems. Also, I am not sure how this works ... but I would like to program them in C/C++
Whenever I've needed to access smart cards for use in security applications it has been via either:
Microsoft CryptoAPI
a PKCS#11 library for the card.
To access a card using the Microsoft CryptoAPI a card specific Cryptographic Service Providers (CSP) is needed. The CSP sits under the CryptoAPI layer.
If you are developing on Unix/Linux using 'C/C++', however, then you will probably want to take a look at the PKCS#11 standard from RSA. The standard specifies a 'C' API called Cryptoki (Cryptographic Token Interface) which gives a common abstraction above all types of crypto devices. Nearly all smart card vendors provide a PKCS#11 library for their cards that you can program against using the Cryptoki API.
If you want to access the smart card/reader at a lower level you can use APIs such as PC/SC or CT-API.
PC/SC defacto standard for smart card access implemented on Windows, Linux and Mac OS X
CT-API provides only very minimal functionality; not very suitable for modern apps.
If you are interested in writing Java applets that run on smart cards then you probably want to look http://java.sun.com/javacard/
Resources that may be of use
OpenSC is a set of libraries and tools for smart cards. It is designed to work with PKCS#11 supporting cards. OpenCT provides drivers for card readers, and tokens that are comprised of both a card and a reader (ie. usb tokens, and other ’complete’ devices).
http://www.linuxnet.com/ MUSCLE - The movement for use of smart cards in a linux environment
PKCS#15 - Cryptographic Token Information Format Standard
Smart Card Handbook
A presentation on PKCS#11given at the RSA conf in 2009.
PyKCS11 A Python wrapper around PKCS#11. These type of wrappers can provide a simpler higher level interface than working directly at Cryptoki level.
Smart Card Alliance
Java is beginning to get a huge grip in the SmartCard market, pushed by very big players (like IBM).
There are entire countries where people are carrying a Java Card in their pocket. For example there are more than 10 millions Belgium citizens whose (mandatory-to-have-with-them) national ID card is a Java Card running the BELPIC "applet".
If I'm not mistaken the entire Brazilian health care system is also based on Java Card(s).
Regarding SmartCard and Linux, here's the Linux SmartCard howto (note that that howto is full of the "Java" keyword everywhere):
http://www.faqs.org/docs/Linux-HOWTO/Smart-Card-HOWTO.html
Then there's a .pdf called "Exploring SmartCards" from June 2008 which takes a look at the big mess that the "SmartCard" world is and that basically starts by explaining that "SmartCard" is about as descriptive as saying "computer": that is, not very descriptive ; )
If you google about you can find smartcard development kits that offer a programmer, a few sample cards, and manuals, reasonably inexpensively.
It also helps to have an understanding of cryptography (especially public-key crypto), and some practice at packing data into really really tiny structures.
Smartcards range from the incredibly dumb (a secure 1kb memory store) to the fairly sophisticated (I've see ones advertised that run a cut down .NET framework).
Probably the most commonly used smartcards are the units produced by Mifare which are generally made as travel tickets but also used as loyalty cards or even access permits.
It is very late to give answer but I would like to give one add-on to the answer of #bignum.
Well, you can start playing around with Java smart card development and I would like to recommed one good book for understanding the know how for beginners and developers. "Java Card Technology for Smart Cards".
If your pocket budget allows then you can buy a "Mobile Security Card" for researching and development of the smartcards applets using the knowledge gained from the book mentioned above.
And you can also refer or use a smart card API project SEEK FOR ANDROID hosted on googlecode for first hand experience.

How to start develop for chinese mobile phones based on nucleus RTOS? (MTK) [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 5 years ago.
Improve this question
I've noticed that chinese mobile phones became very popular, perhaps because of their very reasonable price and many modern features (touch screens, advanced multimedia, double sim cards etc).
I'm wondering if there's any way to develop custom solutions for this handsets as independent developer? How to obtain a toolkit and documentation?
I've found some resources, but mainly inconsistent tech notes, often in chinese only. For now I know, that majority of chinese handsets are based on chips from MediaTek (MTK), with operating system based on Nucleus RTOS and MMI (plutoMMI?) framework. Unfortunately, there is no Java RE avaiable (ok, there are some handsets with Java, however, Java isn't something I'm looking for)
Is there any SDK, documentation, emulators/simulators, how-tos, etc avaiable? How to develop, deploy and test custom application for MTK mobile?
I am enginner at design company. I have MTK development platform for MT series mobiles with English explanation. The original release and manuals are written in English(About 300mb pdf files). The SDK have simulator written in Visual C++. MMI interface working under nucleus rtos os. The codes are V++.
The MTK service is charged. You need to contact them and pay for the chip, software SDK, document, and technical support.
I don't know where you get the "some resource", but it must be leaked by some customer of their, thus using these resource will be considered as illegal.
I work with a lot of Chinese mobile phone manufacturers because we export mobile phones from China. I'm really interested in building a new applications, especially an email program, for these MTK based devices. Now it's a bit late to be looking at the 6225 platform because the 6235 platform seems to be where we'll see the most growth moving forward. The major differences that I'm aware of between the 6235 and 6225 are that 6235 supports Wi-Fi, works with EDGE, and is faster.
Steve, you mentioned the G2. I think that Android will be the breakout OS for Chinese phone manufacturing. Once their local engineers and designers get a handle on it a plethora of both ridiculous and useful applications and models will flourish and there won't be major export (customs) problems as we see now with the Windows Mobile devices (because the Chinese typically don't offer licensed software).
For platform sources this can be a starting point :
https://www.mentor.com/embedded-software/downloads/nucleus-source-interest_reg
I have no real experience on RTOS, I am GNU/Linux guy
I just bought a SciPhone G2 Dream and have done some initial investigation. This particular phone runs J2ME applications but I am also wondering what can be done (if anything) with native applications. Ideally I would like to get my Bluetooth GPS to work with this phone.
This page discusses getting GCC to work with Nucleus but I'm not sure whether this is useful.
Mentor (the makers of Nucleus) have a trial version of their developer suite available. I have just requested a free trial. It is a bit concerning that the website makes no mention of the cost. They also have an emulator.
What sort of phone did you get and what sort of applications are you planning to develop?
I'm in same wagon like you, trying to select an smartphone with WIFI and available SDK, low cost (lower thatn 40$). Also contacted Mediatek without results. I can give you a piece of advice, in reality is what I'm doing now. Try to negotiate a bulk purchase with a supplier together with access to SDK and documentation. I did that before with an ARM based Thinclient and worked, but I had to buy 30 pcs.
I'm not exactly sure of what you mean by a 'Chinese' phone. However, you may be talking about ODM phones. Most of the time, these phones are system clones of regular phones with some customisation. It may be a good idea to just buy one and take it apart to see what platform it runs on. Maybe it uses OMAP or something else? In which case, you probably have more knowledge on how to proceed. Maybe it is even compatible with Linux.