1
0
Fork 0
msdeibel 2020-02-18 21:47:45 +01:00
commit 7cc71fc077
2 changed files with 29 additions and 11 deletions

View File

@ -809,6 +809,19 @@
{"name":"-flagrse","url":"app.js"}, {"name":"-flagrse","url":"app.js"},
{"name":"*flagrse","url":"app-icon.js","evaluate":true} {"name":"*flagrse","url":"app-icon.js","evaluate":true}
] ]
},
{ "id": "wohrm",
"name": "Workout Heart Rate Monitor",
"icon": "wohrm.png",
"version":"0.01",
"description": "Workout heart rate monitor notifies you with a buzz if your heart rate goes above or below the set limits.",
"tags": "hrm,workout",
"type": "app",
"allow_emulator":true,
"storage": [
{"name":"+wohrm","url":"wohrm.json"},
{"name":"-wohrm","url":"wohrm.js"},
{"name":"*wohrm","url":"wohrm-icon.js","evaluate":true}
]
} }
] ]

View File

@ -1,8 +1,13 @@
const Setter = {
UPPER: 'upper',
LOWER: 'lower'
};
upperLimit = 130; upperLimit = 130;
lowerLimit = 100; lowerLimit = 100;
limitSetter = "lower"; limitSetter = Setter.LOWER;
currentHeartRate = 220; currentHeartRate = 0;
hrConfidence = 49; hrConfidence = -1;
function drawTrainingHeartRate() { function drawTrainingHeartRate() {
renderUpperLimit(); renderUpperLimit();
@ -21,7 +26,7 @@ function renderUpperLimit() {
g.fillRect(140,40, 230, 70); g.fillRect(140,40, 230, 70);
g.fillRect(200,70, 230, 210); g.fillRect(200,70, 230, 210);
if(limitSetter === "upper"){ if(limitSetter === Setter.UPPER){
g.setColor(255,255, 255); g.setColor(255,255, 255);
g.drawPoly([140,40,230,40,230,210,200,210,200,70,140,70], true); g.drawPoly([140,40,230,40,230,210,200,210,200,70,140,70], true);
} }
@ -44,7 +49,7 @@ function renderLowerLimit() {
g.fillRect(10, 180, 100, 210); g.fillRect(10, 180, 100, 210);
g.fillRect(10, 40, 40, 180); g.fillRect(10, 40, 40, 180);
if(limitSetter === "lower"){ if(limitSetter === Setter.LOWER){
g.setColor(255,255, 255); g.setColor(255,255, 255);
g.drawPoly([10,40,40,40,40,180,100,180,100,210,10,210], true); g.drawPoly([10,40,40,40,40,180,100,180,100,210,10,210], true);
} }
@ -91,21 +96,21 @@ function onHrm(hrm){
} }
function setLimitSetterToLower() { function setLimitSetterToLower() {
limitSetter = "lower"; limitSetter = Setter.LOWER;
console.log("Limit setter is lower"); console.log("Limit setter is lower");
renderUpperLimit(); renderUpperLimit();
renderLowerLimit(); renderLowerLimit();
} }
function setLimitSetterToUpper() { function setLimitSetterToUpper() {
limitSetter = "upper"; limitSetter = Setter.UPPER;
console.log("Limit setter is upper"); console.log("Limit setter is upper");
renderLowerLimit(); renderLowerLimit();
renderUpperLimit(); renderUpperLimit();
} }
function incrementLimit(){ function incrementLimit(){
if(limitSetter === "upper"){ if(limitSetter === Setter.UPPER){
upperLimit++; upperLimit++;
renderUpperLimit(); renderUpperLimit();
console.log("Upper limit: " + upperLimit); console.log("Upper limit: " + upperLimit);
@ -117,7 +122,7 @@ function incrementLimit(){
} }
function decrementLimit(){ function decrementLimit(){
if(limitSetter === "upper"){ if(limitSetter === Setter.UPPER){
upperLimit--; upperLimit--;
renderUpperLimit(); renderUpperLimit();
console.log("Upper limit: " + upperLimit); console.log("Upper limit: " + upperLimit);
@ -163,4 +168,4 @@ setWatch(decrementLimit, BTN3, {edge:"rising", debounce:50, repeat:true});
setWatch(setLimitSetterToLower, BTN4, {edge:"rising", debounce:50, repeat:true}); setWatch(setLimitSetterToLower, BTN4, {edge:"rising", debounce:50, repeat:true});
setWatch(setLimitSetterToUpper, BTN5, {edge:"rising", debounce:50, repeat:true}); setWatch(setLimitSetterToUpper, BTN5, {edge:"rising", debounce:50, repeat:true});