Bugfix und Regattaauswahl verbessert
This commit is contained in:
parent
eab6cdf4c9
commit
65335e3c91
|
@ -233,7 +233,7 @@ class RaceTracker(Page):
|
|||
|
||||
x0 = 8 # Labelspalte
|
||||
x1 = 88 # Datenspalte
|
||||
y0 = 75
|
||||
y0 = 70
|
||||
yoffset = 16
|
||||
|
||||
# Bootsdaten
|
||||
|
@ -324,8 +324,8 @@ class RaceTracker(Page):
|
|||
# Rechte Spalte mit Regattaauswahl
|
||||
|
||||
x = 208
|
||||
y = 75
|
||||
yoffset = 16
|
||||
y = 70
|
||||
yoffset = 21
|
||||
|
||||
# Mögliche Regatten
|
||||
self.races = self.app.track.hero_get_races()
|
||||
|
|
14
tracker.py
14
tracker.py
|
@ -4,7 +4,7 @@ Tracker-Daten
|
|||
Mögliche Typen:
|
||||
HERO - Regatta Hero
|
||||
SDCARD
|
||||
LOCAL
|
||||
LOCAL - gpx Datei
|
||||
SERVER - spezielle Software benötigt, kann auch ein Raspi an Bord sein
|
||||
NONE - kein Tracking
|
||||
|
||||
|
@ -83,6 +83,7 @@ class Tracker():
|
|||
}
|
||||
|
||||
self.hero_raceid = None # Aktuell ausgewählte Regatta
|
||||
self.hero_racephase = 0 # Bei Änderung Event auslösen
|
||||
|
||||
# MQTT
|
||||
self.client = mqtt.Client()
|
||||
|
@ -345,7 +346,14 @@ class Tracker():
|
|||
# dem Topic angehängt ist noch die raceid
|
||||
payload = json.loads(msg.payload)
|
||||
self.hero_racestatus = payload['racestatus']
|
||||
racephase = payload['racestatus']['racephase']
|
||||
if self.hero_racephase != racephase:
|
||||
# Phasenänderung! Event!
|
||||
print("Event: Phasenübergang {} -> {}".format(self.hero_racephase, racephase))
|
||||
self.hero_racephase = racephase
|
||||
|
||||
# payload['racestatus']['racestarted']
|
||||
# payload['racesettings']
|
||||
"""
|
||||
time: negativ: Zeit vor dem Start, positiv: Zeit nach dem Start
|
||||
in Sekunden
|
||||
|
@ -369,7 +377,7 @@ class Tracker():
|
|||
self.log.warning(f"UNKNOWN TOPIC: {msg.topic}")
|
||||
self.log.debug(msg.payload)
|
||||
|
||||
def mqtt_publish(self, client, topic, payload, bv_lat, bv_lon, bv_sog):
|
||||
def mqtt_publish(self, topic, payload, bv_lat, bv_lon, bv_sog):
|
||||
"""
|
||||
Payload vorbelegt als Template, so daß nur noch die veränderlichen
|
||||
GPS-Daten eingefügt werden müssen: LAT LON SOG TIMESTAMP
|
||||
|
@ -385,7 +393,7 @@ class Tracker():
|
|||
payload['gps']['lon'] = round(lon, 5)
|
||||
payload['gps']['speed'] = sog
|
||||
payload['gps']['timestamp'] = time.strftime("%Y-%m-%dT%H:%M:%S.000Z", time.gmtime())
|
||||
client.publish(topic, json.dumps(payload))
|
||||
self.client.publish(topic, json.dumps(payload))
|
||||
else:
|
||||
self.log.debug("No GPS data available. Nothing published!")
|
||||
|
||||
|
|
Loading…
Reference in New Issue