Forums | developer.brewmp.com Forums | developer.brewmp.com

Developer

Forums

Forums:

Hi guys,

I would like to know as to how we can obtain a GPS fix using network triangulation method? I'm using IPOSDET APIs.

I am able to get the GPS fix from the GPS satellite (when exposed to the open sky), but when we enter into a place where there is no GPS signal, the device must use network triangulation and compute the approximate GPS location of the device.

What are the prerequisities for obtaining GPS fix using network triangulation?

 

Thanks in advance.

Try IPosdet_GetSectorInfo().

Try IPosdet_GetSectorInfo().

Thanks Atul.
I'm getting some huge value like 1073741844, which is not in WGS-84 ellipsoid.
How do I convert it to degrees??

Thanks Atul.
I'm getting some huge value like 1073741844, which is not in WGS-84 ellipsoid.
How do I convert it to degrees??

If a carrier does not have GPS enabled, can we still get sector info ?

If a carrier does not have GPS enabled, can we still get sector info ?

Varun, here you go

IPOSDET_GetSectorInfo(pme->m_pdPosition, &psiSector);
double fv;
         AECHAR              szText[32];
         char                latStr[32], lonStr[32];
         fv = FASSIGN_INT(psiSector.dwBaseLatitude);
         fv = FDIV(fv,14400); 
         fv = FASSIGN_INT(psiSector.dwBaseLongitude);
         fv = FDIV(fv,14400);
Letsplay,
Standalone GPS mode can be used provided device supports standalone mode, which works without using network and directly communicates with satelite 

Varun, here you go

IPOSDET_GetSectorInfo(pme->m_pdPosition, &psiSector);
double fv;
         AECHAR              szText[32];
         char                latStr[32], lonStr[32];
         fv = FASSIGN_INT(psiSector.dwBaseLatitude);
         fv = FDIV(fv,14400); 
         fv = FASSIGN_INT(psiSector.dwBaseLongitude);
         fv = FDIV(fv,14400);
Letsplay,
Standalone GPS mode can be used provided device supports standalone mode, which works without using network and directly communicates with satelite 

Varun, here you go
 
 IPOSDET_GetSectorInfo(pme->m_pdPosition, &psiSector);
 double fv1;
 double fv2;
         fv1 = FASSIGN_INT(psiSector.dwBaseLatitude);
         fv1 = FDIV(fv,14400); 
         fv 2= FASSIGN_INT(psiSector.dwBaseLongitude);
         fv2 = FDIV(fv,14400);

Varun, here you go
 
 IPOSDET_GetSectorInfo(pme->m_pdPosition, &psiSector);
 double fv1;
 double fv2;
         fv1 = FASSIGN_INT(psiSector.dwBaseLatitude);
         fv1 = FDIV(fv,14400); 
         fv 2= FASSIGN_INT(psiSector.dwBaseLongitude);
         fv2 = FDIV(fv,14400);

Letsplay,
Standalone GPS mode can be used provided device supports standalone mode, which works without using network and directly communicates with satelite.

Letsplay,
Standalone GPS mode can be used provided device supports standalone mode, which works without using network and directly communicates with satelite.

Atul,
 
  How do we know if a device supports standalone mode without actually having the device, is it in the data sheets?

Atul,
 
  How do we know if a device supports standalone mode without actually having the device, is it in the data sheets?

Yes, under position determination. IDS_DD_POS_STANDALONE should set if supported.

Yes, under position determination. IDS_DD_POS_STANDALONE should set if supported.

Thanks for all the support guys. I think this should resolve the problem.

Thanks for all the support guys. I think this should resolve the problem.

Guys, I'm using a CDMA device. But I'm really not sure as to why I'm getting the values of both dwBaseLatitude and dwBaseLongitude as zeroes. The API is returning SUCCESS, but below values are:
dwBaseLatitude : 0
dwBaseLongitude : 0
wSysID : 14655
wNetID: 15618
wBaseID : 494
wBaseClass: 0 (Even Base Class ???!!!)
wBestPN : 129
wPacketZoneID: 77
wMobileCountryCode : 393
 
Why is the country code showing as 393 (India = 91, right?) .
What am I missing here? Please help me. :(
 

Guys, I'm using a CDMA device. But I'm really not sure as to why I'm getting the values of both dwBaseLatitude and dwBaseLongitude as zeroes. The API is returning SUCCESS, but below values are:
dwBaseLatitude : 0
dwBaseLongitude : 0
wSysID : 14655
wNetID: 15618
wBaseID : 494
wBaseClass: 0 (Even Base Class ???!!!)
wBestPN : 129
wPacketZoneID: 77
wMobileCountryCode : 393
 
Why is the country code showing as 393 (India = 91, right?) .
What am I missing here? Please help me. :(
 

MCC - Mobile country code is different from ISD code.
you may use ISHELL_GetDeviceInfoEx() with item AEE_DEVICEITEM_MOBILE_IDto cross -check MCC.
are u getting same values on multiple tries?
which device/operator?

MCC - Mobile country code is different from ISD code.
you may use ISHELL_GetDeviceInfoEx() with item AEE_DEVICEITEM_MOBILE_IDto cross -check MCC.
are u getting same values on multiple tries?
which device/operator?

I'm getting the exact same values each and every time. I'm really surprised that the Lat and Lon values are zeroes but the others are getting filled with some value.
Do I need to set any port number and server IP address? I guess there is a PDE server and Port which I'm not setting in Service Programming.
I'm not sure how to get them. If I call up the carrier, they're saying that they're also not sure what I'm talking about.

I'm getting the exact same values each and every time. I'm really surprised that the Lat and Lon values are zeroes but the others are getting filled with some value.
Do I need to set any port number and server IP address? I guess there is a PDE server and Port which I'm not setting in Service Programming.
I'm not sure how to get them. If I call up the carrier, they're saying that they're also not sure what I'm talking about.

which device & brew version are u using for compiling the app? on some prior versions of IPosdet, dwLat/Long is not filles in sectorinfo.

which device & brew version are u using for compiling the app? on some prior versions of IPosdet, dwLat/Long is not filles in sectorinfo.

I'm using an IEM (Internet of Everything Module - 3G). It's not in a phone, but it is on a proprietary device which is compatible to run this module.
The version of BrewMP is 1.0.4.508.
Is there an alternative method to get the network triangulated GPS fixes? 

I'm using an IEM (Internet of Everything Module - 3G). It's not in a phone, but it is on a proprietary device which is compatible to run this module.
The version of BrewMP is 1.0.4.508.
Is there an alternative method to get the network triangulated GPS fixes? 

Can anyone suggest me what other alternative options are available in order to get network triangulation GPS fixes?

Can anyone suggest me what other alternative options are available in order to get network triangulation GPS fixes?

Thanks spratap... In that example, it asks for PDE Server IP address and Port number? Where do I get those values from?
I used the sample program to get the GPS fixes and it works. But the problem arises when the GPS line-of-sight is not there and we have to depend on network triangulation for current location.
This is seen on phones, where it will show you the approximate location even though GPS is not switched on or when there is no direct line-of-sight to the sky.
From the below link, we can observe that there is an AGPS server.
https://developer.brewmp.com/resources/tech-guides/position-determinatio...
I have a strong feeling that it has something to do with the AGPS server also. But I'm not aware as to how I can establish a network connectivity to that server.

Thanks spratap... In that example, it asks for PDE Server IP address and Port number? Where do I get those values from?
I used the sample program to get the GPS fixes and it works. But the problem arises when the GPS line-of-sight is not there and we have to depend on network triangulation for current location.
This is seen on phones, where it will show you the approximate location even though GPS is not switched on or when there is no direct line-of-sight to the sky.
From the below link, we can observe that there is an AGPS server.
https://developer.brewmp.com/resources/tech-guides/position-determinatio...
I have a strong feeling that it has something to do with the AGPS server also. But I'm not aware as to how I can establish a network connectivity to that server.

yes there is a server involved for AGPS fixes. Its called PDE server or GPS server.
generally it should be set in device for a perticular operator.
 
here is one from google on this link:-
https://docs.google.com/document/d/12JGuF553-Yswh7IRhAZ77I0tpfyuTb0N9SpJ...
use values of SUPL_HOST & SUPL_PORT which do not begin with #.
to check if its minimal connectable, you may telnet the ip/port from cmd prompt & see if it connects.
 
Apps using server type other than
AEEGPS_SERVER_DEFAULT must have privilege to the group id
AEECLSID_LOCATIONSERVER.
If the server type is AEEGPS_SERVER_IP, the IP Address and port of
the Position Determination server must be specified. If the port number is
specified as 0, connection will be attempted on a default port for the
service.
 

yes there is a server involved for AGPS fixes. Its called PDE server or GPS server.
generally it should be set in device for a perticular operator.
 
here is one from google on this link:-
https://docs.google.com/document/d/12JGuF553-Yswh7IRhAZ77I0tpfyuTb0N9SpJ...
use values of SUPL_HOST & SUPL_PORT which do not begin with #.
to check if its minimal connectable, you may telnet the ip/port from cmd prompt & see if it connects.
 
Apps using server type other than
AEEGPS_SERVER_DEFAULT must have privilege to the group id
AEECLSID_LOCATIONSERVER.
If the server type is AEEGPS_SERVER_IP, the IP Address and port of
the Position Determination server must be specified. If the port number is
specified as 0, connection will be attempted on a default port for the
service.
 

Thank you, spratap. I used the c_sampleposdet example to feed in the ip address and port number that was provided for SUPL_HOST & SUPL_PORT. But, I dint get any GPS fix. :(
The link that you shared with me is from the gps.conf file. This is used in the android phones and should be placed in a particular location. Is it possible to fo the same thing in BREW as well? 
I also see a bunch of NTP_SERVER and XTRA_SERVER in the gps.conf file. Do I need to use these as well in order to get the network triangulated fixes?
Can I get a sample code snippet of how to use all of these to help me get a network triangulated GPS fix?

Thank you, spratap. I used the c_sampleposdet example to feed in the ip address and port number that was provided for SUPL_HOST & SUPL_PORT. But, I dint get any GPS fix. :(
The link that you shared with me is from the gps.conf file. This is used in the android phones and should be placed in a particular location. Is it possible to fo the same thing in BREW as well? 
I also see a bunch of NTP_SERVER and XTRA_SERVER in the gps.conf file. Do I need to use these as well in order to get the network triangulated fixes?
Can I get a sample code snippet of how to use all of these to help me get a network triangulated GPS fix?

yes i am able to get a fix using google pde/port values.
hope you are using the IP Address of the url on that link. (u may get IP by pinging the url from cmd prompt).
Once you set the IP Address & Port on the sample posdet App, use the option One Shot to get the GPS fix. Be paitient, it may take some time. Also the device should be data enabled(it should be able to make data calls).
Also, by default the sampleposdet App does not has "Location Server" privilage. If you use it as is you will get error 0x15 when you configure a PDE Server.
You need to add this classid AEECLSID_LOCATIONSERVER (in file AEECLSID_LOCATIONSERVER.BID) under dependencies in the MIF file of the sampleposdet App.

yes i am able to get a fix using google pde/port values.
hope you are using the IP Address of the url on that link. (u may get IP by pinging the url from cmd prompt).
Once you set the IP Address & Port on the sample posdet App, use the option One Shot to get the GPS fix. Be paitient, it may take some time. Also the device should be data enabled(it should be able to make data calls).
Also, by default the sampleposdet App does not has "Location Server" privilage. If you use it as is you will get error 0x15 when you configure a PDE Server.
You need to add this classid AEECLSID_LOCATIONSERVER (in file AEECLSID_LOCATIONSERVER.BID) under dependencies in the MIF file of the sampleposdet App.