Add GPS Info app
parent
8c17d9b281
commit
77c1b10f5a
|
|
@ -0,0 +1 @@
|
||||||
|
require("heatshrink").decompress(atob("mEwghC/AH4AKg9wC6t3u4uVC6wWBI6t3uJeVuMQCqcBLisAi4XLxAABFxAXKgc4DBAuBRhQXEDAq7MmYXEwBHEXZYXFGAOqAAKDMmczC4mIC62CC50PC4JIBkQABiIvRmURAAUSjQXSFwMoxGKC6CRFwUSVYgXLPIgXXwMYegoXLJAYXCGBnzGA0hPQIwMgYwGC6gwCC4ZIMC4gYBC604C4ZISmcRVgapQAAMhC6GIJIwXCMBcIxGDDBAuLC4IwGAARGMAAQWGmAXPJQoWMC4pwCCpoXJAB4XXAH4A/ABQA="))
|
||||||
|
|
@ -0,0 +1,55 @@
|
||||||
|
var img = require("heatshrink").decompress(atob("mEwghC/AH4AKg9wC6t3u4uVC6wWBI6t3uJeVuMQCqcBLisAi4XLxAABFxAXKgc4DBAuBRhQXEDAq7MmYXEwBHEXZYXFGAOqAAKDMmczC4mIC62CC50PC4JIBkQABiIvRmURAAUSjQXSFwMoxGKC6CRFwUSVYgXLPIgXXwMYegoXLJAYXCGBnzGA0hPQIwMgYwGC6gwCC4ZIMC4gYBC604C4ZISmcRVgapQAAMhC6GIJIwXCMBcIxGDDBAuLC4IwGAARGMAAQWGmAXPJQoWMC4pwCCpoXJAB4XXAH4A/ABQA="))
|
||||||
|
|
||||||
|
Bangle.setGPSPower(1);
|
||||||
|
Bangle.setLCDMode("doublebuffered");
|
||||||
|
|
||||||
|
var lastFix = {
|
||||||
|
fix: 0,
|
||||||
|
alt: 0,
|
||||||
|
lat: 0,
|
||||||
|
lon: 0,
|
||||||
|
time: 0,
|
||||||
|
satellites: 0
|
||||||
|
};
|
||||||
|
|
||||||
|
function formatTime(now) {
|
||||||
|
var fd = now.toUTCString().split(" ");
|
||||||
|
var time = fd[4].substr(0, 5);
|
||||||
|
var date = [fd[0], fd[1], fd[2]].join(" ");
|
||||||
|
var year = now.getFullYear();
|
||||||
|
return time + " - " + date;
|
||||||
|
}
|
||||||
|
|
||||||
|
function onGPS(fix) {
|
||||||
|
lastFix = fix;
|
||||||
|
g.clear();
|
||||||
|
g.setFontAlign(-1, -1);
|
||||||
|
g.drawImage(img, 30, -6);
|
||||||
|
g.setFont("6x8");
|
||||||
|
g.setFontVector(22);
|
||||||
|
g.drawString("GPS Info", 80, 6);
|
||||||
|
if (fix.fix) {
|
||||||
|
var alt = fix.alt;
|
||||||
|
var lat = fix.lat;
|
||||||
|
var lon = fix.lon;
|
||||||
|
var time = formatTime(fix.time);
|
||||||
|
var satellites = fix.satellites;
|
||||||
|
|
||||||
|
var s = 12;
|
||||||
|
g.setFontVector(s+4);
|
||||||
|
g.drawString("Altitude: "+alt+" m",0,60);
|
||||||
|
g.setFontVector(s);
|
||||||
|
g.drawString("Lat: "+lat, 0, 60+20+s/2);
|
||||||
|
g.drawString("Lon: "+lon,0,60+40+s/2);
|
||||||
|
g.drawString("Time: "+time, 0, 60+60+s/2);
|
||||||
|
g.drawString("Satellites: "+satellites,0,60+80+s/2);
|
||||||
|
|
||||||
|
} else {
|
||||||
|
g.setFontAlign(0, 1);
|
||||||
|
g.setFont("6x8", 2);
|
||||||
|
g.drawString("Waiting for GPS", 120, 80);
|
||||||
|
}
|
||||||
|
g.flip();
|
||||||
|
}
|
||||||
|
|
||||||
|
Bangle.on('GPS', onGPS);
|
||||||
|
|
@ -0,0 +1,6 @@
|
||||||
|
{
|
||||||
|
"name": "GPS Info",
|
||||||
|
"type": "app",
|
||||||
|
"icon": "*gpsinfo",
|
||||||
|
"src": "-gpsinfo"
|
||||||
|
}
|
||||||
Loading…
Reference in New Issue