forked from FOSS/BangleApps
Update app.js
parent
746bbe7a10
commit
6b9bc061cd
|
@ -460,9 +460,11 @@ function updateClock() {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// =Main Prog
|
||||||
|
|
||||||
|
// Read settings.
|
||||||
|
let cfg = require('Storage').readJSON('bikespeedo.json',1)||{};
|
||||||
|
|
||||||
//###
|
|
||||||
let cfg = {};
|
|
||||||
cfg.spd = 1; // Multiplier for speed unit conversions. 0 = use the locale values for speed
|
cfg.spd = 1; // Multiplier for speed unit conversions. 0 = use the locale values for speed
|
||||||
cfg.spd_unit = 'km/h'; // Displayed speed unit
|
cfg.spd_unit = 'km/h'; // Displayed speed unit
|
||||||
cfg.alt = 1; // Multiplier for altitude unit conversions. (feet:'0.3048')
|
cfg.alt = 1; // Multiplier for altitude unit conversions. (feet:'0.3048')
|
||||||
|
@ -472,8 +474,12 @@ cfg.dist_unit = 'km'; // Displayed distnce units
|
||||||
cfg.modeA = 1;
|
cfg.modeA = 1;
|
||||||
cfg.primSpd = 1; // 1 = Spd in primary, 0 = Spd in secondary
|
cfg.primSpd = 1; // 1 = Spd in primary, 0 = Spd in secondary
|
||||||
|
|
||||||
cfg.spdFilt = false;
|
cfg.altDiff = cfg.altDiff==undefined?100:cfg.altDiff;
|
||||||
cfg.altFilt = false;
|
cfg.spdFilt = cfg.spdFilt==undefined?true:cfg.spdFilt;
|
||||||
|
cfg.altFilt = cfg.altFilt==undefined?false:cfg.altFilt;
|
||||||
|
console.log("cfg.altDiff: " + cfg.altDiff);
|
||||||
|
console.log("cfg.spdFilt: " + cfg.spdFilt);
|
||||||
|
console.log("cfg.altFilt: " + cfg.altFilt);
|
||||||
|
|
||||||
if ( cfg.spdFilt ) var spdFilter = new KalmanFilter({R: 0.1 , Q: 1 });
|
if ( cfg.spdFilt ) var spdFilter = new KalmanFilter({R: 0.1 , Q: 1 });
|
||||||
if ( cfg.altFilt ) var altFilter = new KalmanFilter({R: 0.01, Q: 2 });
|
if ( cfg.altFilt ) var altFilter = new KalmanFilter({R: 0.01, Q: 2 });
|
||||||
|
@ -489,7 +495,9 @@ function onGPSraw(nmea) {
|
||||||
} }
|
} }
|
||||||
if(BANGLEJS2) Bangle.on('GPS-raw', onGPSraw);
|
if(BANGLEJS2) Bangle.on('GPS-raw', onGPSraw);
|
||||||
|
|
||||||
function onPressure(dat) { altiBaro = dat.altitude.toFixed(0); }
|
function onPressure(dat) {
|
||||||
|
altiBaro = Number(dat.altitude.toFixed(0)) + Number(cfg.altDiff);
|
||||||
|
}
|
||||||
|
|
||||||
Bangle.setBarometerPower(1); // needs some time...
|
Bangle.setBarometerPower(1); // needs some time...
|
||||||
g.clearRect(0,screenYstart,screenW,screenH);
|
g.clearRect(0,screenYstart,screenW,screenH);
|
||||||
|
@ -520,10 +528,10 @@ function Compass_tiltfixread(O,S){
|
||||||
return psi;
|
return psi;
|
||||||
}
|
}
|
||||||
var Compass_heading = 0;
|
var Compass_heading = 0;
|
||||||
function Compass_newHeading(m,h){
|
function Compass_newHeading(m,h){
|
||||||
var s = Math.abs(m - h);
|
var s = Math.abs(m - h);
|
||||||
var delta = (m>h)?1:-1;
|
var delta = (m>h)?1:-1;
|
||||||
if (s>=180){s=360-s; delta = -delta;}
|
if (s>=180){s=360-s; delta = -delta;}
|
||||||
if (s<2) return h;
|
if (s<2) return h;
|
||||||
var hd = h + delta*(1 + Math.round(s/5));
|
var hd = h + delta*(1 + Math.round(s/5));
|
||||||
if (hd<0) hd+=360;
|
if (hd<0) hd+=360;
|
||||||
|
|
Loading…
Reference in New Issue