PLS8: device tracking via radio signal | Telit Cinterion IoT Developer Community
June 23, 2017 - 2:03pm, 4230 views
We need to know where a certain device (PLS8 equipped) is located, without using the (A-)GPS service because of a lack of GPS coverage. We wonder if there exists anyway to obtain sufficient information from the module to estimate its location on the map. It does not matter if the tracking ***** to be performed outside of the device (in a server side, for example), but it is important that the information is obtained from the module itself.
I've thought about using serving and neighbour cells information (for triangulation purposes), but neighbours one does not seem to give a clue about cell location, at least for 3G (and 4G, I guess). Furthermore, it's not even mentioned in PLS8 AT Command Set document.
So, does anybody know a way to get this working?
From the module you can read the serving and neighboring cell ID's. To get the device position you need to use a third party online service that will return the position based on that data.
From the PHS8 AT Command Specification document (there's nothing about neighbour cells in PLS8 documentation) it can be read that cell ID's information is just given when connected to a 2G network. However, when connected to 3G, no information related to the cell location is presented. For 4G networks, the command does not even work (+CME ERROR: operation not supported). So, as far as I know, there would not be any way to determine where a 3G/4G cell is located.
Is there something I am missing?
Thanks and regards,
Please paste the at commands that you are using with replies.
With AT^SMONI command you can read the serving cell ID for all technologies.
The neighboring cell ID's you can get with AT^SMONP command.
To get the approximate location you need to send the cell ID to third party service.
these are the used commands (both default and enhanced *****) and their replies:
And, from the PHS8-E AT Command Specification:
Responses of AT^SMONP execute command:
In case of a GSM (2G) serving cell:
2G: ARFCN1,rs1,dBm1,MCC1,MNC1,NCC1,BCC1,C11,C21 ,LAC1,cell1
In case of a UMTS (3G) serving cell:
Responses of write command AT^SMONP=255:
In case of a GSM (2G) serving cell:
2G: ARFCN1,rs 1,dBm1,MCC1,MNC1,NCC1,BCC1,C1 1,C21 ,LAC1,cell1,C31 1,C321
In case of a 3G serving cell:
According to the documentation, no neighboring LAC nor cell ID information is given while connected to 3G networks.
I understand that a very rough location could be obtained from a third party service, given the serving cell ID, but that location could be more accurate if neighbour cells IDs could be also given and that's what I'm trying to achieve.
Unfortunately you are right - the neighboring cellID's are available but only in case of 2G and 4G. For 3G there are no cellID's for the neighboring cells printed but only UARFCN and PSC.
Thanks for reply. Just a last check, is neighboring cell information available for 4G? When I issue the command while connected to a 4G network, I cannot see the reply I get when in 2G/3G:
I have checked with my module and it works. Please check the FW version with ATI1 command.
ATI1 reply is:
Your firmware version is quite old. There are updates for revision 2 that you have. And you should try them first. There is also revision 3 which I was using for my test. You could also update your test module to revision 3 and then use release 3 modules for production versions. Generally it is not recommended to update rel. 2 modules to rel.3 because some fields will not be updated.
Thanks for info and support.