GPS

From WebOS Internals
Revision as of 11:57, 4 December 2009 by FreeTim (talk | contribs) (status-updated the SH known issue, added summary of Location Services, added small Mojo code sample, cleaned up my own grammar, corrected the flow of the contents table)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

GPS

The GPS hardware page.

Software found elsewhere (location services - see SDK.)

Description

The Palm Pre has a built-in hardware GPS, it's integrated in the radio receiver chip.

Internet has some misleading information out there because the initial tear-downs didn't spot a separate GPS chip, so reviewers thought the Palm Pre didn't have a GPS and thus must rely on cell phone tower location like so : The Pre does use the assisted GPS capabilities of the Qualcomm baseband. That means the phone will not be able to get a location fix when it is not connected to the cellular network.

The above isn't entirely accurate - the Palm Pre DOES indeed have integrated GPS (satellite reciever) hardware, it's part of the RF reciever chip, and it uses this hardware GPS if it's turned on (enabled.)

Usage Summary

  • If the GPS is on, GPS hardware will be used with location determined by satellites.
  • If the GPS is turned off in Location Services, the Palm Pre will fall back on cell tower location to locate.



Hardware Chips

The GPS receiver hardware chip is physically located on the Comm board, right hand side, it's integrated as part of the RF (radio frequency) receiver chip RFR6500 that is part of the OMAP3 chipset (PDF file),

The Palm Pre's main communication chipsets include the RFR6500 receiver and RFT6150 transmitter. The GPS isn't part of the MSM6801 controller but rather it's part of the Qualcomm RFR6500 Receiver on the Palm Pre, or since one is a processing controller and the other is the radio receiver chip, the GPS as a whole may be thought of as a combination of these two hardware chips (radio receiver, and processor), which is why some flow diagrams for logic may show the GPS in the MSM6801 (processor) logic block.

The radio receiver chip, a Qualcomm RFR6500, is a Radio Frequency Support chip and supports both GPS receiving and receiving of the voice part of cellular. This radio receiver chip needs some digital controller for the processing and control, this is done via the Baseband Processor which is the Qualcomm MSM6801A chip.

Software and the MSM6801A controller won't allow the RFR6500 GPS reception to function without the cell modem first being registered - see errata below.

PhoneWreck.com shows the RFR6500 reciever too, in the teardown.

There is an engineering report here. The engineering report article is where you'll find that Qualcomm’s RFR6500 is a receiver that can "support both GPS and CDMA2000 cell voice reception."



Mojo

Location Services

  • There are Mojo methods detailed in the SDK under Location Services (and so, no need to also detail them here.) Overview: Some of the Mojo functions allow to get current location, to subscribe to services (thus continually updating coordinates) and also reverse address resolution - put in an address and return the longitude/ latitude.
  • See the SDK for the current WebOS version which describes the Javascript use of Location services.
  • Available GPS data from Mojo includes in a single call method:
    • Longitude
    • Latitude
    • Altitude
    • Heading
    • Velocity
    • Timestamp (miliseconds from epoch)

Mojo Code Sample

Mojo Code is updated and fully documented in the SDK. Here is a sample snippet for the GPS to get the idea. May change in future versions; this works for 1.3.1 (Dec2009)

      this.serviceRequestHandle = new Mojo.Service.Request('palm://com.palm.location', {
           method: 'startTracking',
           parameters: {
               subscribe: true
           },
           onSuccess: this.onGpsOn.bind(me),
           onFailure: this.onGpsOff.bind(me)


Known Issues

Southern Hemisphere

Mojo software on the Pre may not be converting lon/lat for the Southern Hemisphere correctly.

  • If patch becomes available, I'll update here.
  • Status update: no fix yet, but Palm is aware of the issue. FreeTim 10:57, 4 December 2009 (UTC)


Battery Life

  • Enabling the GPS itself seems to consume more of the battery than when it's off.
  • Results from today's test with battery meter:

Testing method

    • I'm on a 12story building in the 9th floor, in Boston Massachusetts USA. Palm Pre is near a window, and GPS gives location value (I assume it can see satellites.)
    • Time: 2-hour tests on the desk without moving the Palm Pre, nor using it in that time, Screen off in 30seconds, no apps running at the same time ( other than Battery Meter.)
  • Procedure:
    • Started battery meter.
    • Battery level began at 20% discharged to 13%. Then recharged it to 20% again, and enabled GPS discharged again... once for each state.
    • Meanwhile just let the Pre sit there.
  • After 2-hours in the first state, from Location services we enabled GPS for the second test.


Results below

Battery Drain Two-hour test results:
.
* GPS OFF = discharge rate 3.18 % per hour
* GPS ON  = discharge rate 3.89 % per hour
.
.
The above are my results, you can evaluate the results yourself - battery meter is freeware homebrew.

Comment: This was not moving, But, when walking /riding does it use up any more current? Assuming then it might be constantly losing / aquiring satellite signal? Further tests will be needed to determine if this is true.



References


This page contributed by FreeTim
Last update : FreeTim 10:57, 4 December 2009 (UTC)

Potential Costs

The Palm Pre driver uses services such a RX Network "GPS on extra" to improve the accuracy, meaning that it downloads files over the GPRS connection if available. Depending on your service providers's charging plan this may mean additional costs on your bill when Location services is enabled. It is not yet known how much data needs to be downloaded or how often.

Low-level Access

The GPS function it seems it can not or is not enabled until the modem is registered to a network. Therefore the communication with the GPS chip goes over the same port and uses the same protocol as GSM, the messages relating to both services are interleaving in the communication stream. The attempt to document this protocol is coordinated at the Research Pre GSM Modem Protocol page.

It is not yet clear whether raw unaided GPS service is at all possible on the Pre hardware, with information such as the number and identitifiers of satellites currently in view, signal strength, and other information provided by traditional GPS chips.