Stream NMEA data¶
examples/stream_nmea_gps_ex4.py¶
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 | #!/usr/bin/env python3 #----------------------------------------------------------------------------- # stream_nmea_gps_ex4.py # # Simple Example for SparkFun ublox GPS products #------------------------------------------------------------------------ # # Written by SparkFun Electronics, July 2020 # # Do you like this library? Help support SparkFun. Buy a board! # https://sparkfun.com #================================================================================== # GNU GPL License 3.0 # Copyright (c) 2020 SparkFun Electronics # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see <https://www.gnu.org/licenses/>. #================================================================================== # Example 4 # This example sets up the serial port and then passes it to the UbloxGPs # library. Now it's as simple as calling stream_nmea(). The function # stream_nmea() returns the full NMEA sentence which could be passed to an NMEA # parser. import serial from ublox_gps import UbloxGps port = serial.Serial('/dev/serial0', baudrate=38400, timeout=1) gps = UbloxGps(port) def run(): try: print("Listening for UBX Messages") while True: try: print(gps.stream_nmea()) except (ValueError, IOError) as err: print(err) finally: port.close() if __name__ == '__main__': run() |