summaryrefslogtreecommitdiff
path: root/gpscat
diff options
context:
space:
mode:
authorEric S. Raymond <esr@thyrsus.com>2010-06-18 17:27:48 -0400
committerEric S. Raymond <esr@thyrsus.com>2010-06-18 17:27:48 -0400
commit8f313cb18dc841a21fdd2d3e239a1f3e6d6f9aab (patch)
tree8aa60a719c5a697a6726622acf68f5e272aac919 /gpscat
parenta2c55bda34e64c49bd34b1b910f1a82ff7957c86 (diff)
downloadgpsd-8f313cb18dc841a21fdd2d3e239a1f3e6d6f9aab.tar.gz
Merge experimental BluZ support. Code is not yet enabled or tested.
All regression tests pass, codebase splints clean.
Diffstat (limited to 'gpscat')
-rwxr-xr-xgpscat10
1 files changed, 8 insertions, 2 deletions
diff --git a/gpscat b/gpscat
index 3fe1fd8b..f51cacbe 100755
--- a/gpscat
+++ b/gpscat
@@ -5,7 +5,7 @@
#
# Display GPS output. Hexify it if necessary.
#
-import os, sys, termios, select, getopt, curses.ascii
+import os, sys, termios, socket, select, getopt, curses.ascii
import gps.packet as sniffer
# The spec says 82, but some receivers (TN-200, GSW 2.3.2) output 86 characters
@@ -63,7 +63,13 @@ if __name__ == '__main__':
sys.stderr.write("usage: gpscat [-s speed] serial-port\n")
raise SystemExit, 0
- tty = os.open(arguments[0], os.O_RDWR)
+ if "rfcomm" in arguments[0]: # Bluetooth special case
+ s = socket.socket(socket.AF_BLUETOOTH, socket.SOCK_STREAM, socket.BTPROTO_RFCOMM)
+ s.connect((arguments[0], 1))
+ tty = s.fileno()
+ else: # Ordinary device
+ tty = os.open(arguments[0], os.O_RDWR)
+
if speed != None:
(iflag, oflag, cflag, lflag, ispeed, ospeed, cc) = termios.tcgetattr(tty)
try: