[Freerunner] Access GPS chip's parameters and navigational models?

macebre macebre at web.de
Fri Jan 16 14:34:12 CET 2009


Am Mittwoch, 14. Januar 2009 18:18:26 schrieb Olivier Migeot:
> Hi ev'ryone,
>
> I'm currently experimenting things with the Antaris chip, and I'm
> starting to like it - at least through FSO and it's gpsd compatibility
> layer. I've been browsing through the UBX protocol specification, and
> I stumbled upon one interesting parameter : the dynamic platform model
> of the navigational unit.
>
> Simply put : using this, we should be able to explain our chip that we
> are either by car or by foot, and get more serious tracklogs
> (providing this is doable, 'cause the doc states "(SW Versions 3.04
> and higher)", so I'm not sure whether or not we qualify).
>
> I did some quick tests, using my work phone as a reference (an HTC
> Trinity with a Sirf chip) : when logging car trips, both tracks are
> pretty close. Like a few meters. Far better than what I expected, at
> least. But when logging pedestrian trips (and I do quite a few), the
> Antaris starts to behave like ... a car. Every steep turn I took is
> throughly rounded on the Neo-based log. So I guess the current setting
> of our chip is "car". So I wonder : does anyone here know whether we
> got "version 3.04 or higher" of the software?
>
> Hoping that we do (well, ignoring that maybe we don't, actually), I
> tried to feed the setting to the chip. The CFG-NAV2 UBX message that
> does that is 40 bytes long, and contains loooot of more or less
> related information, which I certainly don't know how to feed. So I
> tried to first _get_ the setting, and re-set it verbatim (give or take
> the said parameter). But though there is a tool to generate UBX
> messages (ubxgen.py, on
> http://wiki.openmoko.org/wiki/Neo_FreeRunner_GPS ), I can't find a
> (successful) way to get the result from the chip. From my view, I
> should cat the commands to ttySAC1 and then read it. But I get nothing
> exciting that way...
Hi,

I looked up the 40 bytes long code with the "u-center 5.06" tool with all 
default values except the "dynamic platform model" (it's the 5th byte). 
01 stationary
02 pedestrian
03 automotive
04 sea
05 - 07 airborne

And then generated a binary code:

FR$ ubxgen.py 06 1A 28 00 03 00 00 00 03 04 10 02 50 C3 00 00 18 14 05 3C 00 
03 00 00 FA 00 FA 00 64 00 2C 01 00
00 00 00 00 00 00 00 00 00 00 00 6B 6D > CFG-NAV2-SET-AUTOMOTIVE.ubx

and

FR$ ubxgen.py 06 1A 28 00 02 00 00 00 03 04 10 02 50 C3 00 00 18 14 05 3C 00 
03 00 00 FA 00 FA 00 64 00 2C 01 00
00 00 00 00 00 00 00 00 00 00 00 6B 6D > CFG-NAV2-SET-PEDESTRIAN.ubx

then set it with 
cat CFG-NAV2-SET-PEDESTRIAN.ubx > /dev/ttySAC1

I've got also the problem that there is no feedback it's set on the chip. 
Now I will test if there is a difference in gps tracks between this to options.


>
> I guess I should shut down FSO's GPS handling first, but how? Is
> stopping fso-gpsd enough? (I tried, but it didn't seem better)
>
> Any insights, somebody? Thanks.






More information about the community mailing list