Bug 11354 - (int-195453) gypsy-daemon can not parse GPRMC message from external GPS receiver
(int-195453)
: gypsy-daemon can not parse GPRMC message from external GPS receiver
Status: RESOLVED FIXED
Product: Location
General
: 5.0:(10.2010.19-1)
: All Maemo
: Unspecified normal (vote)
: Harmattan
Assigned To: unassigned
: location-framework-bugs
:
:
:
:
  Show dependency tree
 
Reported: 2010-09-29 20:42 UTC by Jan Knutar
Modified: 2010-09-30 11:40 UTC (History)
1 user (show)

See Also:


Attachments


Note

You need to log in before you can comment on or make changes to this bug.


Description Jan Knutar (reporter) 2010-09-29 20:42:52 UTC
SOFTWARE VERSION:
(Settings > General > About product)

10.2010.19-1

EXACT STEPS LEADING TO PROBLEM: 

Alternative A:

1. 
Use Settings -> Location to select an external Insmat Sirfstar III bluetooth
GPS receiver

2. 
Put GPS receiver in car, take N900 with you into car, set GPS receiver on the
dashboard or somewhere with signal, put N900 somewhere where you can observe
it. 

3. 
Start OVI Maps, create a route from current GPS position, press the red dot to
track where you are.

4.
Drive

EXPECTED OUTCOME:

The map is rotated so that the direction your car travels in is upward.

ACTUAL OUTCOME:

The map is not rotated.

REPRODUCIBILITY:

Always.


HOW TO REPRODUCE, ALTERNATIVE B:

1. Set N900 to use external bluetooth gps as above.

2. Start GPSJinni (from extras),  tap General. Observe the "Speed" and
"Direction" data.

EXPECTED RESULT: Speed is not 0 when gps receiver is moving

ACTUAL OUTCOME: Speed is 0 even when gps receiver is moving at speeds clearly
larger than 0.



CAUSE/BugHunt:

The Bluetooth GPS emits $GPRMC sentences of the following format:

$GPRMC,040302.663,A,3939.7,N,10506.6,W,0.27,358.86,200804,,*1A

gypsy-daemon wants 12 fields in the GPRMC message
(gypsy-daemon-0.6/src/nmea-parser.c and gypsy-daemon-0.6/src/nmea-parser.h).
However, it only actually uses 9 of those fields, those are all included in the
message sent by my SirfStar III gps unit.

It seems silly for gypsy-daemon to fail parsing the GPRMC sentence if the extra
fields are absent, when gypsy-daemon ignores the extra fields.

FIX:

gypsy-daemon-0.6/src/nmea-parse.h line 22:
#define RMC_FIELDS 12

Change to:

#define RMC_FIELDS 9


Outcome of above change:

Speed is non-zero as reported by GPSJinni, Direction is changing.
Comment 1 Andre Klapper maemo.org 2010-09-29 20:51:40 UTC
Hi Jan, thanks for reporting this!
Note that the Maemo 5 platform components (e.g. libraries) are considered
stable by Nokia. Only major issues have a chance of being addressed by Nokia.
MeeGo Handset is where the unstable development is taking place.
Comment 2 Andre Klapper maemo.org 2010-09-30 11:40:12 UTC
Nokia's internal comment:

"The proposed fix is not correct. The correct fix is that the SW should be
prepared to see empty 11th field (E/W) if magnetic variation (10th field) is
missing. 
This problem has been fixed in Harmattan (the version after Maemo5). This is a
WONTFIX for Maemo5."