[FSO/SHR] ogpsd/fso-gpsd: can't get 4Hz sample rate

Vasco Névoa vasco.nevoa at sapo.pt
Wed May 13 17:10:15 CEST 2009


Hi all.

I'm used to putting the GTA02's ublox chip into 4Hz sample mode for my  
research projects, but ever since I started using FSO and derivatives  
I can't get it to spit out anything other than 1Hz samples - so I just  
stop "fso-gpsd", configure the chip at my own will, and read directly  
from /dev/ttySAC1.
However, this is the unfriendly way to do it, and I'd like to  
integrate this option with FSO.

So I found the initialization sequence inside  
"/usr/lib/python2.6/site-packages/framework/subsystems/ogpsd/om.py"  
and added this to the end of "def initializeDevice", just before the  
"self.huiTimeout = gobject.timeout_add_seconds( 300,  
self.requestHuiTimer )":
        # increase sample data rate to 4Hz:
         self.send("CFG-RATE", 6, {"Meas" : 0x00fa, "Nav" : 0x0001,  
"Time" : 0x0000})
Unfortunately, it doesn't change anything. "gpspipe -r" will still put  
out a single set of messages per second, even though the GPS chip is  
(hopefuly) configured for 4 sets per second. When used with the  
original gpsd in other older distros, this didn't happen; gpspipe -r  
outputs whatever the the gpsd delivers. So the problem is most likely  
in FSO's ogpsd implementation.
Sending a u-blox binary string into /dev/ttySAC1 with the same config  
message while fso-gpsd is working also doesn't work out (I've tried  
many times just in case I'm racing with the framework and messages get  
mangled).

I've combed the framework code in that folder trying to find any 1s  
cycle hardcoded, but everything looks as it should: event-triggered by  
available data.
So the 1M€ question is: where the heck is this 1s polling cycle  
defined? How can I get the ogpsd framework to output 4 samples per  
second instead of 1?

Any hints will be appreciated.

Thx,

V.




More information about the community mailing list