Documentation
Expansion boards
GPSstix and audioStix The difference is the GPS module has been added to the GPSstix board. The GPS module requires the use of the STUART to communicate.
Both Audiostix2 and GPSstix offer an expansion board with the following features:
It connects to a gumstix motherboard via a 60-pin hirose connector.
All pin-outs on audiostix2 and GPSstix are 50 ml pitch.
Notes:
ml = mils, or 1/1000 inch
pitch = center to center spacing of pins or pads
Thus, a 50 mil pitch is 0.05 inches between centers, or 20 pins per inch.
Anyone building a gps-based device using a gumstix would want to be able to connect to the gumstix one of 2 ways: wired (ethernet, serial, USB) or wireless (802.11 WiFi, Bluetooth).
| Description | Extra feature | gumstix Product |
|---|---|---|
| GPS expansion board | GPSstix expansion board | |
| antenna information below | ||
| motherboard | USB host signals | verdex XM4 motherboard |
| 10/100 ethernet | with compact flash card slot | netCF-vx |
| or 802.11(g) | small form fact storage | coming soon |
| serial null-modem cable | serial null-modem cable | |
| power supply | 5V power adapter | |
| assembly | screws & spacers kit | |
| add a console board | console access via RS232 (replaces GPSstix) | console-vx board |
.
| Description | Extra feature | gumstix Product |
|---|---|---|
| GPS board | GPSstix expansion board | |
| antenna information below | ||
| motherboard | connex 400xm motherboard | |
| 10/100 ethernet | with MMC card slot | netMMC |
| or with compact flash slot | netCF | |
| or 802.11(g) | no storage | wifistix |
| or with compact flash slot | wifistix-CF | |
| serial cable | serial null-modem cable | |
| power supply | 5V power adapter | |
| assembly | screws & spacers kit | |
| add console board | console access using RS232 serial (replaces GPSstix) | console-st board |
'
Note this Revision Notification announcing a module change for GPSstix in the summer of 2007.
For more information on antenna for the GPSstix board, click here .
.
The GPS receiver module on the GPSstix expansion board is the u-blox LEA-4H. A SuperSense (weak-signal) model was selected since everyone seemed to think the high sensitivity was worth the extra ~$10. More information on the LEA-4H is available on the u-blox Web site here.
The u-blox SuperSense™ technology provides high-sensitivity / weak-signal GPS performance. SuperSense™ is described on the u-blox Web site here.
If you have not done so yet, you should register on the u-blox Web site here in order to gain access to any of u-blox technical documentation.
The LEA-4H Product Summary and Data Sheet PDF files can be found here. Use your userid and password from the u-blox registration process to get access to the Data Sheet and the other Support and Technical Documentation files.
A PNG image of the schematic for the original GPSstix (revision 791) is here.
The schematic for the updated GPSstix (revision 1286) is here
The connector on any mating antenna cable should be an SMA male.
The GPSstix expansion board version 1678 and later use the u-blox NEO-4S module which needs an ACTIVE antenna as noted in this Revision Notification of July, 2007.
A suitable active antenna is linked here.
Note: The u-blox NEO-4S module is also being used in the GoliathGPS-vx expansion board.
GPSstix version R1286 (and later) is designed for use with an active antenna that accepts 3.3VDC - the u-blox LEA-4H GPS receiver module will supply power of up to 50mA to the antenna.
GPSstix version R791 (the original design) is designed for use "out of the box" with a passive antenna. If you have an active antenna that will work with a 3.3VDC supply, follow these instructions to modify the GPSstix board to supply antenna bias voltage:
When shopping for a GPS antenna, the most important characteristics are:
Synergy Systems, LLC carries GPS passive and active antennas, as well as a good selection of GPS and GPS-related accessories.
Spark Fun Electronics carries GPS active antennas, available via this link.
Gilsson Technologies carries high-performance active antennas designed to work with a range of Garmin, Magellan and Navman receivers, and some are good matches for use with a modified original R791 GPSstix or an un-modified R1286+ revision GPSstix. In particular, they have models designed to work with a bias supply from 2.5-12VDC at only 10-18mA, and can equip them with cables up to 16 feet in length.
There are 2 kinds of GPS antennas.
Note: Regardless of the GPS antenna type, always connect the antenna to the GPSstix before applying power to the gumstix/GPSstix system - the GPS receiver calibrates its front-end to the antenna/cable noise floor at power up.
Note: The antenna for GPSstix must be purchased separately from the GPSstix expansion board.
From February 2007 to July, 2007, Gumstix sold the GPSstix version R1286 at gumstix.com. This version of the GPSstix was designed to be easily modifiable for a passive antenna with the following changes:
WARNING: Do NOT connect a passive antenna to a GPSstix
configured for an active antenna (a modified original R791 GPSstix or
an un-modified R1286+ revision GPSstix). Passive antennas may
present a near-short-circuit to the GPSstix antenna power section, and
the resulting over-current might damage the antenna, GPS receiver
module, and/or the antenna bias resistor (not a "good idea"! ;). As
long as an appropriately-sized antenna bias resistor is in place, the
u-blox LEA-4H should detect the short-circuit and turn off the antenna
supply, but you're still pushing your luck!
The u-blox LEA-4H modules supports the NMEA 0183 (industry-standard ASCII text) and UBX (u-blox proprietary binary) protocols. The document that describes the u-blox implementation of the NMEA and UBX protocols is here: ANTARIS Protocol Specification (you may have to do a simple registration to access u-blox technical documentation). The ANTARIS Protocol Specification is the only document that describes the full UBX protocol in detail. The NMEA 0183 Interface Standard protocol is officially defined by the National Marine Electronics Association, and the official Standard document is available only from them, for $270. The gpsd project does publish a list of the NMEA sentences they support here.
LEA-4H serial port 1 is connected to gumstix /dev/ttyS2, initializes at 9600 8N1 and is configured to transmit and receive NMEA and UBX messages:
See the FAQ sections below for software that works with GPS data on the gumstix or PC-based software that can work by redirecting the GPS data off the gumstix.
If you already have a console connection to your gumstix and you just want to see the NMEA (ASCII text) data coming out of the GPS receiver, you can simply issue the built-in cat command for gumstix serial port /dev/ttyS2, as follows:
cat /dev/ttyS2
You may have to kill (Ctrl+C) and re-issue the command one or more times until you get a stream of NMEA messages of the form:
$GPRMC,011220.00,A,3902.19515,N,07723.09203,W,0.665,73.52,280207,,,A*4D $GPVTG,73.52,T,,M,0.665,N,1.232,K,A*09 $GPGGA,011220.00,3902.19515,N,07723.09203,W,1,06,1.81,108.7,M,-33.4,M,,*6F $GPGSA,A,3,14,12,22,09,11,18,,,,,,,2.64,1.81,1.92*06 $GPGSV,3,1,11,01,21,277,23,14,60,312,31,30,31,130,,31,27,219,16*72 $GPGSV,3,2,11,12,32,088,26,22,84,120,40,21,02,174,,09,20,046,22*7F $GPGSV,3,3,11,11,05,320,30,18,47,130,25,05,36,096,23*4F $GPGLL,3902.19515,N,07723.09203,W,011220.00,A,A*73 $GPZDA,011220.00,28,02,2007,00,00*6B
Ignore any messages of the form:
$GPTXT,01,01,01,NMEA unknown msg*58
as they are an artifact of using the cat command in this environment (it appears that the cat command or something else is sending data to the GPS receiver that it can't deal with).
Refer to the gpsd project's list of NMEA sentences if you need to manually parse the GPSstix NMEA sentences into meaningful data fields.
The cat command has limited usefulness in most situations, however. If you want to process the GPS data on the gumstix itself, you will have to write your own software or use some existing software. Open-source GPS-related applications that have been ported to the gumstix (ARM) architecture and can use GPS data are:
gpsd:
gpsd is a service daemon that can talk to a GPS receiver, parse and collect the data, and distribute the data to other applications. The gumstix Buildroot includes the gpsd Package, ready to build into the root filesystem. To start gpsd on the gumstix and then view the NMEA data stream using the gpspipe client, enter the following commands:
gpsd -n /dev/ttyS2 gpspipe -r
ntpd:
ntpd is a Network Time Protocol (NTP) service daemon that also includes "reference clock drivers" for various types of locally-connected GPS receivers. NTP can accurately set and maintain gumstix system time based on GPS data. The gumstix Buildroot includes the ntp Package, ready to build into the root filesystem, and Steve Falco has a NTP Clock project on this Wiki.
GPSTk:
The GPS Toolkit (GPSTk)application is an open-source, general-purpose, suite of GPS library functions and data-processing that can operate on data supplied by the GPSstix or other GPS receivers. There is a page on this Wiki that give further details here.
If you want to view and use the GPS data (and/or control the GPS receiver) outside of the gumstix/GPSstix (e.g., from an application on a PC or PDA), you will need to redirect gumstix GPS serial port /dev/ttyS2 to the outside world (in/out of the gumstix) over a network connection or a Bluetooth serial connection. There are at least two techniques for this (socat and the Flockbots serialdemon):
socat:
The socat application is a flexible data transfer utility that is included as a Package in the gumstix Buildroot, ready to be compiled. socat is described as follows (from the README file): "socat is a relay for bidirectional data transfer between two independent data channels. ... socat can be used, e.g., as TCP port forwarder (one-shot or daemon), as an external socksifier, for attacking weak firewalls, as a shell interface to UNIX sockets, IP6 relay, for redirecting TCP oriented programs to a serial line, to logically connect serial lines on different computers, or to establish a relatively secure environment (su and chroot) for running client or server shell scripts with network connections ...."
The following command has been verified with socat 1.6.0.0 to redirect the GPS serial port NMEA data to/from the command line (stdin/stdout) - giving a nice, clean display of the NMEA data without the anomalies described for the 'cat' command above:
socat /dev/ttyS2,b9600,raw,clocal=1,echo=0 -
( The "-" at the end of the command is the shortcut for stdio. )
The following procedure has been verified with socat 1.6.0.0 to redirect the GPS serial port over a Bluetooth serial (rfcomm) port to a PC, where the NMEA data was viewed in the VisualGPS application, and UBX data was transferred to/from the GPS receiver using the u-blox u-center application:
Hardware:
Gumstix Sofware:
Bluetooth Configuration:
sdptool browse ff:ff:ff:00:00:00 sdptool add --channel=2 SP sdptool setattr 0x010000 0x100 "Ch 1 Serial (getty)" sdptool setattr 0x010001 0x100 "Ch 2 Serial (GPS)" sdptool browse ff:ff:ff:00:00:00 rfcomm -r listen 1 2 &
- If a "Gumstix (0)" device is not displayed, F5 to refresh devices - Tools - Configurations - Quick Connect... - Add Gumstix (0) as COM5 - Right-click Gumstix (0), Refresh Services - Right-click Gumstix (0), Connect - Bluetooth Serial Port Service B
# ./socat /dev/ttyS2,b9600,raw,clocal=1,echo=0 /dev/rfcomm1
u-blox u-center Win32 PC Application:
When you're done you should see a dynamic u-center display that looks like the thumbnail to the right. Now you can use the u-center Messages window to query the GPS receiver for any NMEA and/or UBX message by clicking on the message in the left-hand tree. Once you query for a UBX message that has a corresponding command message (PC to GPS receiver), you can edit the field(s) in the Messages window right-hand pane, then click the 'Send' button at the bottom of the Messages window to send the command to the receiver. u-center and the UBX protocol gives you complete control over the GPSstix receiver as well as detailed receiver internals status.
Flockbots serialdaemon:
The Flockbots serialdaemon (see the bottom of the page) application was created by a group at George Mason University to redirect serial data to/from a network socket. The process to use it with a gumstix/GPSstix was described on the mailing list by gumstix/GPSstix user Landon:
./serialdaemon -serial /dev/ttyS2 -port 5000 -baud 9600
telnet 192.168.69.2 5000
If you have managed to redirect the GPS serial port to the outside world, then there are a number of PC/PDA-based software applications that can be used to display, log, and manipulate the gumstix/GPSstix GPS data:
Windows:
Windows Mobile (Pocket PC):
Open-Source:
Note: This is by no means a complete list of all the applications that can use GPS data - in particular this list does not include the large number of mapping and GIS applications.
Short Answer: You should have acquired some satellites within at least 41 seconds, but you must be tracking at least 3 satellites (with a good geometry in the sky) to generate a 2-D fix, and ...
The Start-Up (power-on) performance of the GPSstix depends upon several factors, as explained in the u-blox ANTARIS 4 GPS Modules System Integration Manual. The primary influences on GPSstix receiver start-up performance are:
The behavior, accuracy, and status of the receiver may change about 12.5 minutes after power on, as that is how long it generally takes to download a complete set of almanac data. For example, the almanac data contains: