Archive for November, 2009

Today we are going to do GSM positioning experiment, I’m sure that you’ll find it interesting. Find a Cinterion modem (a TC65, XT65, HC25 etc. or a terminal (MTX65, MTXH25 etc.)… Let’s get started.

As Im sure you know, Google has a service (that is powered by Android, its new Operating System for mobiles) for GSM cell positioning. This means for example, using a mobile application, it will allow you to know which friends are around you. How does it do this? By detecting if any of your friends is in the same (or the next) GSM cell as you.

How does Google know if one cell is next to another?

Well it’s because it’s Google and Google knows everything. Really it’s because it has a large database that has the GPS coordinates of all phone antenna.

If you take a look at the website…

http://www.codeproject.com/KB/mobile/DeepCast.aspx

…You will see that these guys explain very well how this Google service works and that have already been working on researching which data has to pass through Google’s API (specifically http://www.google.com/glm/mmap) and most importantly, how to do it so it returns coordinates (latitude and longitude) of a particular phone antenna.

If you read the article carefully you will see that you need to get the following data from a GSM antenna to get the position:

Cell Tower ID
Location Area Code (LAC)
Mobile Network Code (MNC)
Mobile Country Code (MCC)

 And how is the data obtained with our modems? The article talks about Windows Mobile RIL…

It’s because the article is aimed at mobile phones. We are going to think about our Cinterion modems. Fortunately these wonderful modems come with AT commands which allow us to obtain such data. For example one of them is:

AT^MONI

Have you executed the command?

If you have executed it you will see that you get some data, in my case:

chann rs  dBm MCC MNC  LAC cell NCC BCC PWR RXLev  C1 I chann TS timAdv PWR  dBm Q ChMod
18 21  -89 214  07 0335 5A0C   1   0  33  -103  13 I    No connection

This is what we can extract from that:

Cell Tower ID = 5A0C
Location Area Code (LAC) = 0335
Mobile Network Code (MNC) = 07
Mobile Country Code (MCC) = 214

Very good, we can call the next page with this data and see the result. Click on the Test link and then substitute the values in the URL parameter (mcc, mnc, lac, cid) for those that I posted that I got from home and then reload this page:

GSM Positioning Test

localizacion-gsm

Cool, is that true? 

Obviously it’s only an approximate position, this isn’t a GPS, but it gives a decent approximation within the large territory where our modem is placed. Applications? This is what is already in everyone’s imagination.

And speaking of applications, this means that within a certain amount of time I will be talking about the MTX-Tunnel-Advanced at great length again, well it has a lot of new features added, including the one that we have just seen.

Can you improve the position of GSM positioning? 

Yes but that’s a different post for next year or for when I have time. Cinterion modems have another command (AT^SMONC) that can return information to up to 7 cells close to the GSM modem. The RSSI is returned in this information; so that the position (longitude/latitude) of these phone antennas are triangulating according to the RSSI, therefore we should be able to obtain more precise information. As I say for now this is deviating away from what I am trying to tell you.

Finally, I will leave you a link to the PHP source code which I have based it on. Use it to consult Google’s API and blogElectronica’s final PHP where I have added the earlier code, the code which is needed in order to be able to use Google maps, and to have a more visual demonstration. I am leaving it for you in a box with ribbon, so don’t complain…

I hope that you liked the post, I like it at least.

Well, now I’m going to fix the buggy,I have to change the entire front right axle; it’s going to take a long time… ciao ;)

www.blogElectronica.com

Tags: , ,

Comments 21 Comments »

Today I had already started writing an article but then I changed my mind as I preferred to make a short video presentation on the new GPRS terminal that I’m sure will be interesting to more than one of you, in a while it’s going to be very well known.

It’s about the new Matrix terminal, the MTX-IND model, which is a terminal based on the powerful TC65i Cinterion module. I’m sure all of you know this GPRS module that allows you to embed Java applications and is based on an ARM9 like I told you a few months ago.

You’ll see it in the video that I made, but to whet you appetite I’ll tell you in advance that it’s a DIN rail GPRS modem, Java programmable, with 2 RS232/RS485/RS422 serial ports, relay outputs, opto-isolated digital inputs/outputs, ADC converters (0-2.4V / 4-20mA), USB and something even MORE interesting (which isn’t available yet) that you can only see in the video. ;)

Well then, here you have the video, I hope that you like it.

www.blogElectronica.com

Comments 10 Comments »