From 32dd4f406019e7cb405fc7c44bab40d90bc7ba05 Mon Sep 17 00:00:00 2001 From: krakenrf <78108016+krakenrf@users.noreply.github.com> Date: Tue, 18 Oct 2022 23:16:48 +1300 Subject: Create gpsd_tracker_krakenmap.py --- misc_scripts/gpsd_tracker_krakenmap.py | 35 ++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 misc_scripts/gpsd_tracker_krakenmap.py diff --git a/misc_scripts/gpsd_tracker_krakenmap.py b/misc_scripts/gpsd_tracker_krakenmap.py new file mode 100644 index 0000000..5a3e5b4 --- /dev/null +++ b/misc_scripts/gpsd_tracker_krakenmap.py @@ -0,0 +1,35 @@ +# Uses an attached USB GPS and GPSd to get location data, and then upload it as a marker to the Kraken Cloud Mapper. + +import gpsd +import time +import requests + +gpsd.connect() +time.sleep(2) + +API_SERVER = 'https://map.krakenrf.com:443' +login = {'username': 'username', 'password': 'password'} + +while(1): + try: + x = requests.post(API_SERVER + '/login', json = login) + break + except: + time.sleep(1) + pass + +token = x.text + +while(1): + try: + packet = gpsd.get_current() + lat, lon = packet.position() + print("lat: " + str(lat)) + print("lon: " + str(lon)) + + beaconData = {'lat': lat, 'lon': lon, 'speed': 0, 'height': 0} + x = requests.post(API_SERVER + '/beacon', json = beaconData, headers = {'Authorization': token}) + + except (gpsd.NoFixError, UserWarning): + print("waiting for fix") + time.sleep(1) -- cgit v1.2.3