GPS Module: Difference between revisions
Jump to navigation
Jump to search
NickPGSmith (talk | contribs) |
NickPGSmith (talk | contribs) (→GPSD) |
||
Line 72: | Line 72: | ||
Should auto-detect which UART is GPS connected to (baud rate, etc, with no configuration) with: | Should auto-detect which UART is GPS connected to (baud rate, etc, with no configuration) with: | ||
USBAUTO="true" | USBAUTO="true" | ||
Can show raw data: | |||
gpscat /dev/ttyS0 | |||
Enable and start gpsd: | Enable and start gpsd: | ||
Line 80: | Line 83: | ||
gpsd | gpsd | ||
Monitor with: | |||
cgps -s | |||
Or | |||
gpsmon | |||
gpscsv | |||
xgps | |||
=== Pulse Per Second (PPS) === | === Pulse Per Second (PPS) === |
Revision as of 21:40, 4 March 2023
HW-595 Board
- Based on uBlox NEO-6M-0-001
- 5V operation (3.3 V regulator onboard)
- UART: 4800 - 230400 bps (9600 bps 8N1 default), TTL levels buffered by 220R resistors
- U.FL connector supplies 3.3 V to active antenna
- Crystal Osc, not TCXO
- LED:
- Constant: Searching
- Blink 1s: Position fix
- Battery-backed RAM contains config data and clock and speeds first-time-to-fix
- Data in NMEA 0183 format
- More background here
Board pinouts:
Pin | Function | Description |
---|---|---|
1 | PPS | 1 pulse/s, synchronised at rising edge, length 100 ms |
2 | RXD | UART input |
3 | TXD | UART output |
4 | GND | Ground |
5 | VCC | 3.3 - 5 V |
PPS can be reconfigured as a frequency reference:
- Send PPS to UART via CTS
- 0.25 Hz - 10 MHz
- Configure in u-Center here
- Output has high frequency accuracy, but suffers from jitter except at a few specific frequencies
Software
U-Center
GPSD
- gpsd
- Packages: gpsd, gpsd-clients
Check data stream with gpsmon:
gpsmon /dev/ttyS0
Can be tested with something like (Debug level 4) :
gpsd -N -n -s 9600 -D 4 /dev/ttyS0 /dev/pps0
Configuration in /etc/sysconfig/gpsd
OPTIONS="-n -s 9600" DEVICES="/dev/ttyS0 /dev/pps0"
Should auto-detect which UART is GPS connected to (baud rate, etc, with no configuration) with:
USBAUTO="true"
Can show raw data:
gpscat /dev/ttyS0
Enable and start gpsd:
systemctl enable gpsd systemctl start gpsd
With gpsd running and without arguments, gpsmon will connect to gpsd port:
gpsd
Monitor with:
cgps -s
Or
gpsmon gpscsv xgps
Pulse Per Second (PPS)
dnf install pps-tools modprobe pps_ldisc setserial -v /dev/ttyS0 low_latency ldattach PPS /dev/ttyS0
Check PPS signal:
ppstest /dev/pps0 ppscheck /dev/ttyS0
Can set at boot with udev rule (/etc/udev/rules.d/gps.rules):
KERNEL=="ttyS0", SYMLINK+="gps0" KERNEL=="ttyS0", RUN+="/usr/bin/setserial -v /dev/%k low_latency" KERNEL=="ttyS0", RUN+="/usr/sbin/ldattach PPS /dev/%k"